1. DatePicker和DatePickerDialog的用法
DatePicker是用于选择日期的控件,和TimePicker类似,一般在设置系统日期和时间的时候可以看到。
DatePicker和以前的控件的一个很大的区别在于,这个控件不在布局文件中声明。
1.声明一个监听器,使用匿名内部类:
1
2
3
4
5
6
|
DatePickerDialog.OnDateSetListener onDateSetListener =
new
DatePickerDialog.OnDateSetListener(){
public
void
onDateSet(DatePicker view,
int
year,
int
monthOfYear,
int
dayOfMonth){
//注意这里的月份是从0开始到11结束的
System.out.println(year+”-”+monthOfYear+”-“+dayOfMonth);
}
};
|
2.复写Activity里面的onCreateDialog(int id)方法:
1
2
3
4
5
6
7
8
9
|
@Override
protected
Dialog onCreateDialog(
int
id){
switch
(id){
case
DATE_PICKER_ID:
//第二个参数是刚刚创建的监听器
return
new
DatePickerDialog(
this
, onDateSetListener,
2013
,
12
,
12
);
}
return
null
;
}
|
3.在需要的时候调用showDialog方法即可:
1
|
showDialog(DATE_PICKER_ID);
// DATE_PICKER_ID是在activity中定义的静态变量,用于标记这是一个DatePickerDialog,随便定义一个整数
|
2. AutoCompleteTextView的使用
AutoCompleteTextView是一个用于自动帮用户填充信息的输入框,就像百度搜索里面的自动提示一样。使用这个控件可以减少用户的输入,提高用户的体验效果。
1.在布局文件当中声明一个AutoCompleteTextView:
1
2
3
4
5
|
<
AutoCompleteTextView
android:id
=
"@+id/autoComplete"
android:layout_width
=
"match_parent"
android:layout_height
=
"wrap_content"
android:layout_marginLeft
=
"5dp"
/>
|
同样需要注意控件名字的大小写。
2.新建一个布局文件,名字为:list_item.xml,如下:
1
2
3
4
5
6
7
8
|
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
TextView
xmlns:android
=
"http://schemas.android.com/apk/res/android"
android:layout_width
=
"match_parent"
android:layout_height
=
"match_parent"
android:padding
=
"10dp"
android:textSize
=
"16sp"
android:textColor
=
"#00F"
>
</
TextView
>
|
3.创建一个ArrayAdapter。AutoCompleteTextView需要使用ArrayAdapter来提供数据:
1
2
3
4
5
6
7
|
List<String> list =
new
ArrayList<String>();
list.add(
"百度网页"
);
list.add(
"百度知道"
);
list.add(
"百度视频"
);
list.add(
"百度音乐"
);
//注意,这里为了使体验效果更好,这个list的数据会很多,越多越好,这里仅仅作为演示。这里使用String的数组也可以作为参数传进去。
ArrayAdapter<String> adapter =
new
ArrayAdapter<String>(
this
, R.layout.list_item, list);
|
4.为AutoCompleteTextView设置数据:
在Activity中,
1
2
|
AutoCompleteTextView autoComplete = (AutoCompleteTextView)findViewById(R.id.autoComplete);
autoComplete.setAdapter(adapter);
|
收工!
在模拟器上运行时,输入关键字“百度”就会看到这几个提示了。