本文主要包括以下内容

  1. Spinner的使用
  2. Gallery的使用

Spinner的使用

Spinner的实现过程是
1. 在xml文件中定义Spinner的控件
2. 在activity中获取Spinner控件
3. 定义Spinner下拉列表项数组并将下拉项的内容添加到这个数组中,通过这个数组建立一个下拉列表的适配器
4. 将上3中的适配器配置给获取的Spinner控件
5. 设置下拉列表的显示样式
6. 为获得的Spinner控件添加事件监听

在XML文件中定义

//在主XML中<include android:id="@+id/sp_chose" layout="@layout/spinner_down"/><?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="30dip"android:orientation="horizontal"android:background="@drawable/filter_bg"android:layout_marginTop="5dip"android:layout_marginLeft="5dip"android:layout_marginRight="5dip"><Spinner
             android:id="@+id/nearby_distance_spinner"style="@style/nearby_spinner_style" /><Spinner
             android:id="@+id/nearby_class_spinner"style="@style/nearby_spinner_style" /><Spinner
             android:id="@+id/nearby_away_spinner"style="@style/nearby_spinner_style" /></LinearLayout>

其中背景图片为

nearby_spinner_style为

<style name="nearby_spinner_style"><item name="android:layout_width">0.0dip</item><item name="android:layout_height">wrap_content</item><item name="android:background">@null</item><item name="android:layout_marginTop">6dip</item><item name="android:layout_weight">1.0</item></style>

找到Spinner并初始化适配器

private void init() {// TODO Auto-generated method stubtopText=(TextView) findViewById(R.id.tv_chose_shop);topText.setText(getIntent().getStringExtra("type"));disSpi=(Spinner) findViewById(R.id.nearby_distance_spinner);claSpi=(Spinner) findViewById(R.id.nearby_class_spinner);awaySpi=(Spinner) findViewById(R.id.nearby_away_spinner);disAdapter=new ArrayAdapter<String>(this, R.layout.nearby_spinner_text, DIS_DATE);claAdapter=new ArrayAdapter<String>(this, R.layout.nearby_spinner_text, CLASS_DATE);awayAdapter=new ArrayAdapter<String>(this, R.layout.nearby_spinner_text, AWAY_DATE);}

其中nearby_spinner_text为

<?xml version="1.0" encoding="utf-8"?><TextView xmlns:android="http://schemas.android.com/apk/res/android"android:id="@android:id/text1"style="?android:attr/spinnerDropDownItemStyle"android:singleLine="true"android:layout_width="fill_parent"android:layout_height="wrap_content"android:gravity="center_vertical"android:textColor="#ffffff"android:textSize="12sp"/>

设置下拉列表的显示样式并且将适配器配置给spinner

//设置列表项显示风格为完全显示disAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);claAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);awayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);disSpi.setAdapter(disAdapter);claSpi.setAdapter(claAdapter);awaySpi.setAdapter(awayAdapter);disSpi.setSelection(2);claSpi.setSelection(0);awaySpi.setSelection(0);

设置监听事件

disSpi.setOnItemSelectedListener(new OnItemSelectedListener() {@Overridepublic void onItemSelected(AdapterView<?> parent, View view,int position, long id) {// TODO Auto-generated method stubToast.makeText(getApplicationContext(), DIS_DATE[position], 0).show();}@Overridepublic void onNothingSelected(AdapterView<?> parent) {// TODO Auto-generated method stub}});

完成,效果如下


转载于:https://www.cnblogs.com/jjx2013/p/6223716.html

Android之UI控件相关推荐

  1. android 画布裁剪,一种基于Android系统对UI控件进行轮廓剪裁及美化的方法与流程...

    本发明涉及Android应用的技术领域,特别涉及一种基于Android系统对UI控件进行轮廓剪裁及美化的方法. 背景技术: 目前,随着智能电视的普及,Android应用层出不穷,而那些表现形式单一.传 ...

  2. android通过代码设置铃声_第六十四回:Android中UI控件之SeekBar

    各位看官们,大家好,上一回中咱们说的是Android中UI控件之ProgressBar的例子,这一回咱们的例子是UI控件之SeekBar.闲话休提,言归正转.让我们一起Talk Android吧! 看 ...

  3. android md 控件,Android基本UI控件.md

    # Android基本UI控件 ## *TextView 文本框* ### TextView常用用法 | 主要方法 | 功能描述 | | :----------: | :--------------- ...

  4. android listview 滑动条显示_第七十六回:Android中UI控件之RecyclerView基础

    各位看官们,大家好,上一回中咱们说的是Android中UI控件之ListView优化的例子,这一回咱们说的例子是UI控件之RecyclerView.闲话休提,言归正转.让我们一起Talk Androi ...

  5. android 触摸监听重写_第六十四回:Android中UI控件之SeekBar

    各位看官们,大家好,上一回中咱们说的是Android中UI控件之ProgressBar的例子,这一回咱们的例子是UI控件之SeekBar.闲话休提,言归正转.让我们一起Talk Android吧! 看 ...

  6. android 根据bounds坐标进行点击操作_炫酷的Android时钟UI控件,隔壁产品都馋哭了...

    废话不多说,先上效果效果酷炫,动画丰富,效果爆炸boom-设计思路看腻了市面上各种丑陋难看的时钟控件,是时候整点新活!将现实生活中的摆钟圆形表盘设计.电子手表的数显表盘设计抽象出来,提取出" ...

  7. Android获取UI控件的宽高

    一.概述 我们如果开发一些依赖于UI控件宽高的功能,那么自然会想到调用View的getHeigth()和getWidth()方法,对于新手来说,这里有一个坑,你在Activity中的onCreate( ...

  8. android基础ui控件,Android基础——基础UI控件

    日历,时钟,计时器 package com.example.mybaseuii; import androidx.appcompat.app.AppCompatActivity; import and ...

  9. Android 优秀UI控件 ---- FlowingDrawer

    1,前天在git上看到了一个不错的控件 ,最近两天项目也没有那么赶了,就抽时间来写写代码,锻炼一下手感,先看一下效果吧. 2 整体来看 ,主要是有两块来实现的,①主界面的RecyclerView ,② ...

最新文章

  1. Android Bitmap圆角
  2. 计算机数字信号原理,计算机网络通信原理数字信号的基带传输.ppt
  3. java: http请求和响应
  4. 百面机器学习知识体系
  5. Hessian之简单使用
  6. MyEclipse Servers视窗出现“Could not create the view: An unexpected exception was thrown”错误解决办法...
  7. pythondocx更新目录_python根目录
  8. 标准C程序设计七---121
  9. 服务器系统多用户怎么解决,服务器如何设置多用户登录
  10. 配音鸭是什么软件?使用方法能详细说明下吗?
  11. R_leaflet包_最易上手地图教程(二)
  12. 易捷行云EasyStack 云平台携手飞腾S2500推动国产化云生态建设
  13. 怎样做出完美的高达模型
  14. st8s003 c语言编译器,什么原因导致ST单片机STM8S003F3P6这个8位机缺货
  15. web界面配置视频 华为ac_华为AC控制器管理AP配置
  16. 人工智能的应用实例——Smartbi大数据AI机器人
  17. Django入门-6:视图-HttpReqeust对象
  18. 网络存储(NAS)在智能家居中的地位
  19. English--虚拟语气和条件状语从句
  20. 北京市交通需求管理政策20年发展历程及反思

热门文章

  1. 百度已经完全落伍!被阿里腾讯甩出100条街,可他们却不自知
  2. 机器学习 - 竞赛网站,算法刷题网站
  3. 为什么每个程序员都要学C语言的五个理由
  4. 什么是原码、反码和补码?
  5. 公司前台打印机的连接方法(超级简单)
  6. 远程连接oracle01017,连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!...
  7. 红帽linux7注册,redhat7.2 解决注册问题 yum
  8. linux lvm 系统快照,利用Linux LVM进行快照备份
  9. Android面试:Java相关
  10. 匈牙利算法学习笔记_Python代码