很少用DatePicker,項目需要用到DatePicker,再用時發現跟以前有些變化,重新簡單梳理一下DatePicker的用法。 先上效果圖: 首先是xml文件的用法: 以前是用android:spinnersShown和android:calendarViewShown這兩個屬性來控制Date ...
很少用DatePicker,項目需要用到DatePicker,再用時發現跟以前有些變化,重新簡單梳理一下DatePicker的用法。
先上效果圖:
首先是xml文件的用法:
以前是用android:spinnersShown和android:calendarViewShown這兩個屬性來控制DatePicker是顯示滾動選擇器還是日曆亦或者兩者都顯示。
現在如果只寫這兩個屬性的話,DatePicker永遠只顯示日曆,不會出現滾動選擇器。
加上android:datePickerMode="spinner"這個屬性之後,配合以上兩個屬性,完美控制DatePicker的的顯示形式。
以下是我的xml文件:
<DatePicker android:id="@+id/date_picker" android:layout_width="wrap_content" android:layout_height="wrap_content" android:calendarViewShown="false" android:spinnersShown="true" android:datePickerMode="spinner" android:layout_gravity="center_horizontal"></DatePicker>View Code
Java代碼如下:
DatePicker datePicker = (DatePicker) view.findViewById(R.id.date_picker); Calendar c = Calendar.getInstance(); int year = c.get(Calendar.YEAR); int month = c.get(Calendar.MONTH); int day = c.get(Calendar.DAY_OF_MONTH); // 初始化DatePicker組件,初始化時指定監聽器 datePicker.init(year, month, day, new DatePicker.OnDateChangedListener() { @Override public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) { } });View Code
有一點需要註意,系統語言設為英文時,顯示形式為 月 日 年,系統語言為中文時,顯示形式為 年 月 日。
這個還是挺人性化的,給谷歌公司點個贊。
這已經基本滿足我的需求了,以後有時間再研究。。。