Android开发之常用控件的使用

1.日期选择控件

DatePickerDialog

代码:

 1         btnChooseDate=(Button) findViewById(R.id.btnChooseDate);
 2         btnChooseDate.setOnClickListener(new OnClickListener() {
 3
 4             @Override
 5             public void onClick(View v) {
 6                 // TODO Auto-generated method stub
 7                 new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
 8
 9                     @Override
10                     public void onDateSet(DatePicker view, int year, int monthOfYear,
11                             int dayOfMonth) {
12                         // TODO Auto-generated method stub
13                         String theDate=String.format("%d-%d-%d", year,monthOfYear+1,dayOfMonth);
14                         btnChooseDate.setText(theDate);
15                     }
16                 }, 2015, 06, 16).show();
17             }
18         });

2.时间选择控件

TimePickerDialog

 1 btnChooseTime=(Button) findViewById(R.id.btnChooseTime);
 2         btnChooseTime.setOnClickListener(new OnClickListener() {
 3
 4             @Override
 5             public void onClick(View v) {
 6                 // TODO Auto-generated method stub
 7                 new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
 8
 9                     @Override
10                     public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
11                         // TODO Auto-generated method stub
12                         String time=String.format("%d-%d", hourOfDay,minute);
13                         btnChooseTime.setText(time);
14                     }
15                 }, 0, 0, true).show();
16             }
17         });

3.下拉选择列表

Spinner

 1 spinner=(Spinner) findViewById(R.id.spinner1);
 2         spinner.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,data));
 3         spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
 4
 5             @Override
 6             public void onItemSelected(AdapterView<?> parent, View view,
 7                     int position, long id) {
 8                 // TODO Auto-generated method stub
 9                 Toast.makeText(MainActivity.this, "点击了"+data[position], Toast.LENGTH_SHORT).show();
10             }
11
12             @Override
13             public void onNothingSelected(AdapterView<?> parent) {
14                 // TODO Auto-generated method stub
15
16             }
17         });

4.单选按钮

RadioButton

注意:在XML文件中,必须使用RadioGroup控件,才可以使用RadioButton。

在JAVA文件中,判断RadioButton是否被点击,使用方法isChecked()。

资源文件

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical" >
 6     <TextView android:layout_width="wrap_content"
 7         android:layout_height="wrap_content"
 8         android:text="世界上最大的海洋?"/>
 9
10     <RadioGroup android:id="@+id/radioGroup"
11         android:layout_width="match_parent"
12         android:layout_height="wrap_content">
13         <RadioButton android:id="@+id/rdA"
14             android:text="A.太平洋"
15             android:layout_width="wrap_content"
16             android:layout_height="wrap_content"/>
17         <RadioButton android:id="@+id/rdB"
18             android:text="B.印度洋"
19             android:layout_width="wrap_content"
20             android:layout_height="wrap_content"/>
21         <RadioButton android:id="@+id/rdC"
22             android:text="C.大西洋"
23             android:layout_width="wrap_content"
24             android:layout_height="wrap_content"/>
25         <RadioButton android:id="@+id/rdD"
26             android:text="D.喜洋洋"
27             android:layout_width="wrap_content"
28             android:layout_height="wrap_content"/>
29     </RadioGroup>
30
31     <Button android:id="@+id/btnSubmit"
32         android:layout_width="wrap_content"
33         android:layout_height="wrap_content"
34         android:text="提交"/>
35
36 </LinearLayout>

JAVA

 1 public class SingleChoose extends Activity {
 2
 3     private Button btnSubmit;
 4     private RadioButton rdA;
 5
 6     @Override
 7     protected void onCreate(Bundle savedInstanceState) {
 8         // TODO Auto-generated method stub
 9         super.onCreate(savedInstanceState);
10         setContentView(R.layout.singlechoose);
11         btnSubmit=(Button) findViewById(R.id.btnSubmit);
12         rdA=(RadioButton) findViewById(R.id.rdA);
13         btnSubmit.setOnClickListener(new OnClickListener() {
14
15             @Override
16             public void onClick(View v) {
17                 // TODO Auto-generated method stub
18                 if (rdA.isChecked()) {
19                     Toast.makeText(SingleChoose.this, "答案是正确的", Toast.LENGTH_SHORT).show();
20                 }
21                 else {
22                     Toast.makeText(SingleChoose.this, "答案是错误的", Toast.LENGTH_SHORT).show();
23                 }
24             }
25         });
26     }
27
28 }

5.多选

Checkbox

资源文件:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical" >
 6     <TextView android:text="请选择你喜欢的事物"
 7         android:layout_width="wrap_content"
 8         android:layout_height="wrap_content"/>
 9     <CheckBox android:id="@+id/cb1"
10         android:layout_width="wrap_content"
11         android:layout_height="wrap_content"
12         android:text="肉夹馍"/>
13     <CheckBox android:id="@+id/cb2"
14         android:layout_width="wrap_content"
15         android:layout_height="wrap_content"
16         android:text="蛋炒饭"/>
17     <CheckBox android:id="@+id/cb3"
18         android:layout_width="wrap_content"
19         android:layout_height="wrap_content"
20         android:text="鸡蛋面"/>
21     <CheckBox android:id="@+id/cb4"
22         android:layout_width="wrap_content"
23         android:layout_height="wrap_content"
24         android:text="鸡米饭"/>
25     <TextView android:id="@+id/showResult"
26         android:layout_width="wrap_content"
27         android:layout_height="wrap_content"/>
28 </LinearLayout>

JAVA文件

 1 public class MlutilChoose extends Activity implements OnCheckedChangeListener {
 2
 3     private CheckBox cb1,cb2,cb3,cb4;
 4     private TextView showResult;
 5     @Override
 6     protected void onCreate(Bundle savedInstanceState) {
 7         // TODO Auto-generated method stub
 8         super.onCreate(savedInstanceState);
 9         setContentView(R.layout.mlutichoose);
10         cb1=(CheckBox) findViewById(R.id.cb1);
11         cb2=(CheckBox) findViewById(R.id.cb2);
12         cb3=(CheckBox) findViewById(R.id.cb3);
13         cb4=(CheckBox) findViewById(R.id.cb4);
14         showResult=(TextView) findViewById(R.id.showResult);
15         cb1.setOnCheckedChangeListener(this);
16         cb2.setOnCheckedChangeListener(this);
17         cb3.setOnCheckedChangeListener(this);
18         cb4.setOnCheckedChangeListener(this);
19     }
20     @Override
21     public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
22         // TODO Auto-generated method stub
23         String str="你喜欢";
24         if (cb1.isChecked()) {
25             str+=cb1.getText().toString()+",";
26         }
27         if (cb2.isChecked()) {
28             str+=cb2.getText().toString()+",";
29         }
30         if (cb3.isChecked()) {
31             str+=cb3.getText().toString()+",";
32         }
33         if (cb4.isChecked()) {
34             str+=cb4.getText().toString();
35         }
36
37         showResult.setText(str);
38     }
39 }
时间: 2024-11-04 09:50:14

Android开发之常用控件的使用的相关文章

IOS开发基础常用控件简介

在IOS开发中,各类控件完美的解决了开发过程中界面与交互展现的问题,使得IOS产品界面更加灵活实用,IOS常用控件的介绍如下. 1.窗口 UIWindow iPhone的规则是一个窗口,多个视图,窗口是你在app显示出来你看到的最底层,他是固定不变的,基本上可以不怎么理会,但要知道每层是怎样的架构. 2.视图 UIView, 是用户构建界面的基础,所有的控件都是在这个页面上画出来的,你可以把它当成是一个画布,你可以通过UIView增加控件,并利用控件和用户进行交互和传递数据. 窗口和视图是最基本

Android开发之基本控件和详解四种布局方式

Android中的控件的使用方式和iOS中控件的使用方式基本相同,都是事件驱动.给控件添加事件也有接口回调和委托代理的方式.今天这篇博客就总结一下Android中常用的基本控件以及布局方式.说到布局方式Android和iOS还是区别挺大的,在iOS中有Frame绝对布局和AutoLayout相对布局.而在Android中的布局方式就比较丰富了,今天博客中会介绍四种常用的布局方式.先总结一下控件,然后再搞一搞基本方式,开发环境还是用的Mac下的Android Studio.开始今天的正题, 虽然A

Android中的常用控件之进度条(ProgressBar)

ProgressBar的常用属性:style,进度条的样式,默认为圆形,用style="?android:attr/progressBarStyleHorizontal"可以将进度条设为条状:android:progress,进度条当前所处进度:android:max,进度条总进度. 用线程实现进度条的注意事项:不能在主线程中执行耗时的操作,只能在子线程中操作:另外,在子线程中不能操作主线程中的控件(ProgressBar除外): 修改后MainActivity.java里的代码如下:

Windows App开发之常用控件与应用栏

控件的属性.事件与样式资源 如何添加控件 添加控件的方式有多种,大家更喜欢下面哪一种呢? 1)使用诸如Blend for Visual Studio或Microsoft Visual Studio XAML设计器的设计工具. 2)在Visual Studio XAML编辑器中将控件添加到XAML代码中. 3)在代码中添加控件. 注意:当应用运行时会看到你在代码中添加的控件,但在 Visual Studio XAML 设计器中看不到. 前面我们通过在工具箱拖住控件以及直接在写XAML代码来设置控件

iOS开发 - 最常用控件 UITableView详解

UITableView掌握点 设置UITableView的dataSource.delegate UITableView多组数据和单组数据的展示 UITableViewCell的常见属性 UITableView的性能优化(cell的循环利用) 自定义Cell 如何展示数据 UITableView需要一个数据源(dataSource)来显示数据 UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等 没有设置数据源的UITableView只是个空壳 凡是遵守UITableVi

Android开发:ListView控件:给Item绑定了点击事件,却点击无效

一.问题引入 ListView控件:给Item绑定了点击事件,却点击无效. 二.解决方案 ListView使用了自定义布局文件,在布局文件中有button等控件时,这些控件获取焦点的级别比listView的item高,所以当点击item时,button等控件会优先获得点击焦点. 解决方法就是在布局文件根元素中添加属性: android:descendantFocusability="blocksDescendants" android:descendantFocusability De

UITableView---IOS开发的常用控件使用总结

UITableView是IOS中非常常见的一个控件,主要用来进行列表内容的展示.有两个默认的内置风格: UITableViewStylePlain和UITableViewStyleGrouped.其中UITableViewStyleGrouped允许将列表中的内容进行分组.UITableViewController是专用于UITableView的视图控制器,提供了一系列的方法来对UITableView进行创建和维护. UITableViewController必须继承两个协议: 1, 通过UIT

Android学习笔记-常用控件

单选按钮 Radio         <RadioGroup              android:id="@+id/genderGroup"             android:layout_width="wrap_content"             android:layout_height="wrap_content"             android:orientation="vertical"

android 开发-ListView列表显示控件的实现

列表的显示需要三个元素: 1.ListVeiw 用来展示列表的View. 2.适配器 用来把数据映射到ListView上的中介. 3.数据    具体的将被映射的字符串,图片,或者基本组件. 根据列表的适配器类型,列表分为三种,ArrayAdapter,SimpleAdapter和SimpleCursorAdapter UI: 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"