1.下拉菜单

在Web开发中,HTML提供了下拉列表的实现,就是使用<select>元素实现一个下拉列表,在其中每个下拉列表项使用<option>表示即可。这是在Web开发中一个必不可少的交互性组件,而在Android中的对应实现就是Spinner。

方法一:

以资源方式,静态展示 Spinner 选项:

<Spinner android:layout_width="match_parent"android:layout_height="wrap_content"android:id="@+id/spinner2"android:entries="@array/spingarr"/>

数据文件:

<?xml version="1.0" encoding="utf-8"?>
<resources><string-array name="spingarr"><item>北京</item>  <item>上海</item>  <item>广州</item>  <item>深圳</item>  </string-array>
</resources>

用法 2 :

以代码方式,动态展示 Spinner 选项,用适配器给Spinner添加数据

package com.example.testspanner;import java.util.ArrayList;
import java.util.List;import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;public class MainActivity extends Activity {
private Spinner spinner;
private List<String> data_list;
private ArrayAdapter<String> arr_adapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.spinner);spinner = (Spinner) findViewById(R.id.spinner);//数据data_list = new ArrayList<String>();data_list.add("北京");data_list.add("上海");data_list.add("广州");data_list.add("深圳");//适配器arr_adapter= new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, data_list);//设置样式arr_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//加载适配器spinner.setAdapter(arr_adapter);}}

布局文件增加:

<Spinner android:layout_width="match_parent"android:layout_height="wrap_content"android:id="@+id/spinner"/>

2.日期选择器

btnChooseData.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {@Overridepublic void onDateSet(DatePicker datePicker, int i, int i1, int i2) {System.out.println(String.format("%d-%d-%d",i,i1,i2));}},2016,1,1).show();}});

点击按钮触发一个日历选择器。

3.日期选择器

btnChooseData.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {@Overridepublic void onTimeSet(TimePicker timePicker, int i, int i1) {System.out.println(String.format("%d:%d",i,i1));}},0,0,true).show();}});}

点击按钮触发一个时间选择器

4.单项选择

 <RadioGroupandroid:layout_width="wrap_content"android:layout_height="wrap_content"><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="New RadioButton1"android:id="@+id/rba" /><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="New RadioButton2"android:id="@+id/rbb" /><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="New RadioButton3"android:id="@+id/rbc" /><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="New RadioButton4"android:id="@+id/rbd" /></RadioGroup>

如果要判断单选组里面哪个选项被选中:

System.out.println(rba.isChecked());

5.多项选择

只需要注意多选对象有一个方法 onCheckedChanged();

转载于:https://www.cnblogs.com/androidNot/p/5634584.html

进阶篇-用户界面:4.Android中常用组件相关推荐

  1. Android 进阶 教你打造 Android 中的 IOC 框架 【ViewInject】 (下)

    上一篇博客我们已经带大家简单的吹了一下IoC,实现了Activity中View的布局以及控件的注入,如果你不了解,请参考:Android 进阶 教你打造 Android 中的 IOC 框架 [View ...

  2. android中常用的快捷键

    2019独角兽企业重金招聘Python工程师标准>>> android中常用的快捷键 Eclipse快捷键-方便查找,呵呵,记性不好 行注释/销注释 Ctrl+/  块注释/销注释/ ...

  3. java中链式调用_Java及Android中常用链式调用写法简单示例

    本文实例讲述了Java及Android中常用链式调用写法.分享给大家供大家参考,具体如下: 最近发现,目前大火的许多开源框架中,大多都使用了一种"(方法).(方法).(方法)"的形 ...

  4. java调用android_Java及Android中常用链式调用写法简单示例

    本文实例讲述了Java及Android中常用链式调用写法.分享给大家供大家参考,具体如下: 最近发现,目前大火的许多开源框架中,大多都使用了一种"(方法).(方法).(方法)"的形 ...

  5. Android中常用的加密方式

    Android中常用的加密方式 HmacSHA1 public static String getSignUtil(String key ,String base) {Log.i(TAG, " ...

  6. Android中常用的设计模式

    一:参考文档 先介绍参考文档(或许我们更容易明白):另记录本人可参考 QQ15 MobileSafe 两个Demo 有哪些在实际 Android 项目中用到的设计模式? Android开发中常见的设计 ...

  7. android开发常用组件和第三方库(二)

    TimLiu-Android 自己总结的Android开源项目及库. github排名 https://github.com/trending, github搜索:https://github.com ...

  8. Android中四大组件

    Android四大组件: 一.分类:Activity.Service.Broadcast Receiver.Content Provider. 1.Activity   (1)一个Activity通常 ...

  9. Android中设置组件多进程

    MultiProcessComponent 源码地址 github源码下载地址https://github.com/onlynight/MultiProcessComponent 概述 这个demo中 ...

最新文章

  1. 重构机房VB.NET机房收费系统个人重构版你都学会了什么(之一)
  2. 河南大学计算机组成原理,河南大学计算机组成原理考点
  3. jquery select change事件_jQuery实现省市联动效果
  4. XML动态排序(1)
  5. nginx正向代理https,zabbix内网实现企业微信告警
  6. 微信小程序,转盘抽奖
  7. Markdown 添加emoji
  8. vue企业门户网站模板_门户网站建设费用需要多少钱?
  9. NSight统计数据的颜色,缩写意义是什么?来自NV Jeff Kiel 比较官方的解释!
  10. linux 软件查询,linux安装常用软件和查询基本信息
  11. mysql geometry索引_Geometry——主流数据库空间索引技术
  12. STM32外设驱动库分析与实现
  13. panabit安装和默认密码
  14. 针孔相机模型和相机内参矩阵K
  15. 2021人工智能状况分析报告
  16. 行转列 和 链接查询 
  17. UnityEditor代码分享导出材质贴图和Mesh本体
  18. CSGO必way电竞9月28日ESL职业联赛2组队伍前瞻
  19. iOS开发 - 中文 iOS/Mac 开发博客列表
  20. 守嘴不惹祸,守心不出错

热门文章

  1. nodejs 之 nvm和pm2
  2. 一个逐步“优化”的范例程序(转)
  3. 在VS2003下把一个DataTable Update 到数据库
  4. cifar-10 图像转为jpg
  5. SQL SERVER 数据库主键和外键的思考
  6. linux修改su的PAM配置文件,linux pam安全认证模块su命令的安全隐患
  7. 10年老电脑如何提速_中国电信宣布将对宽带免费提速,最高500Mbps
  8. 计算机的iscsi配置,PC端的iSCSI参数设置方法
  9. elf 取路径_c – 获取主要可执行文件的ELF标题
  10. linux将txt文件复制为bak,Linux命令:cp (copy)复制文件或目录