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){
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);
|
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( "百度音乐" );
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);
|
收工!
在模拟器上运行时,输入关键字“百度”就会看到这几个提示了。