重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
1.DatePicker
10年積累的網站制作、成都網站建設經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先制作網站后付款的網站建設流程,更有封丘免費網站建設讓你可以放心的選擇與我們合作。
在Android中,DatePicker用來實現日期輸入設置,日期的設置范圍為1900年1月1日至2100年12月31日。
1.1常用xml屬性
DatePicker的常用xml屬性如圖1所示:
圖1 DatePicker常用xml屬性
其中,android:calendarViewShown[boolean]用于設置是否顯示calendar view;android:endYear[int]用于設置截至日期;android:maxDate[int]用于設置最大的日期;android:minDate[int]用于設置最小的日期;android:spinnersShown[boolean]用于設置是否顯示spinners;android:startYear[int]用于設置起始日期。
1.2常用方法
DatePicker的常用方法有以下一些:
(1)public CalendarView getCalendarView(); //獲取CalendarView
(2)public boolean getCalendarViewShown(); //獲取CalendarView是否顯示
(3)public int getDayOfMonth(); //獲取當前日期的日
(4)public long getMaxDate(); ? //獲取最大日期
(5)public long getMinDate(); ? ?//獲取最小日期
(6)public int getMonth(); ? ?//獲取當前日期的月
(7)public boolean getSpinnersShown(); ? ? //獲取Spinners是否顯示
(8)public int getYear(); //獲取當前日期的年
(9)public void init(int year,int monthOfYear,int dayOfMonth,
DatePicker.OnDateChangedListener onDateChangedListener); //初始化日期
(10)public void setCalendarViewShown(boolean shown);//設置是否顯示CalendarView
(11)public void setMaxDate(long maxDate); //設置最大日期
(12)public void setMinDate(long minDate); //設置最小日期
(13)public void setSpinnersShown(boolean shown); //設置是否顯示Spinners
(14)public void updateDate(int year,int month,int dayOfMonth); ?//更新當前日期
2.TimePicker
在Android中,TimePicker用來實現時間輸入設置,可以選擇12或24小時模式。TimePicker的常用方法有以下一些:
(1)public Integer getCurrentHour(); //獲取當前時間的小時
(2)public Integer getCurrentMinute(); ?//獲取當前時間的分鐘
(3)public boolean is24HourView(); //獲取是否為24小時模式
(4)public void setCurrentHour(Integer currentHour); ? ? ? ? ? ?//設置當前時間的小時
(5)public void setCurrentMinute(Integer currentMinute); ? ? ?//設置當前時間的分鐘
(6)public void setIs24HourView(Boolean is24HourView); ? ? ?//設置24小時模式
3.DatePickerDialog
在Android中,DatePickerDialog用來顯示日期對話框。DatePickerDialog的常用方法有以下一些:
(1)public DatePicker getDatePicker(); ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//獲取DatePicker中的日期值
(2)public void onClick(DialogInterface dialog,int which); ? ? ? //響應對話框中的點擊事件
(3)public void onDateChanged(DatePicker view,int year,int month,int day); ? ? ? //響應日期改變事件
(4)public void updateDate(int year,int monthOfYear,int dayOfMonth); ? ? ? ? ? ? ?//更新當前日期
4.TimePickerDialog
在Android中,TimePickerDialog用來顯示時間對話框。TimePickerDialog的常用方法有以下一些:
(1)public void onClick(DialogInterface dialog,int which); ? ? ? ? ? ? ? ? ? ? ? ? ? ? //響應對話框中的點擊事件
(2)public void onTimeChanged(TimePicker view,int hourOfDay,int minute); ? ?//響應時間改變事件
(3)public void updateTime(int hourOfDay,int minuteOfHour); ? ? ? ? ? ? ? ? ? ? ? //更新當前時間
5.AnalogClock
在Android中,AnalogClock用于顯示指針式時鐘,該時鐘僅有時鐘和分鐘兩個指針。
6.DigitalClock
在Android中,DigitalClock用來顯示數字式時鐘,顯示格式為HH:MM:SS AM/PM。
【問題一】 卡頓問題
有人打開CalendarView會發生卡頓現象,不過這個問題也有人找到解決方案。如下:
解決Android CalendarView顯示卡頓的問題
【問題二】 獲取不到日期問題
在某些手機上,會發生獲取不到日期的問題,這個問題是非常嚴重的,因為系統兼容問題導致,這個問題目前沒有解決方案
【問題三】 樣式不一致問題
CalendarView的樣式受到系統的影響,在不同的手機上可能樣式不一樣。
比如,在布局文件中寫一個最簡單的CalendarView布局
但是,在手機上的樣式是這樣的:
總之,一般項目中使用日歷控件都會將原生控件CalendarView排除在外。
[本章完...]
一、關于時間的控件分為兩種:日期時間控件 和 日歷控件。
??? 日期時間控件: 當選擇的時間包含時分時會采用的控件 。一般點擊后,我見過的交互有兩種方式,一種是在底部彈出選擇框,通過滾動的形式可選擇年、月、日、時、分,點擊完成按鈕關閉彈窗。另一種是在點擊處下方直接顯示,選擇的形式同底部彈出選擇一樣,選擇完成后,點擊開始的點擊處,隱藏選擇框。
? ? 日歷控件 :當選擇的時間僅僅為日期的時候會選擇的控件。我見過的日歷控件分為可折疊和不可折疊兩種。不可折疊的日歷控件都是按月份展示,通過左右滑動,可切換月份。可折疊的日歷控件在上滑時會收起,折疊成周歷,左右滑動可切換周。兩種控件也可結合使用,如圖:
二、地點控件,交互上我分為了頁面選擇控件和底部彈框控件。
? ? 頁面選擇交互 :當選擇的地點,包括歷史訪問地點、熱門城市等,輔助功能時,可采用這種交互控件。優點:可搜索/索引查找,輔助功能可以多些。缺點:需要頁面跳轉。
? ? 底部彈窗交互 :是一種輕松便捷的選擇地點的方式,目前也有產品把熱門城市選擇容進來了,不過如果輔助功能較多,還是覺得選擇用頁面選擇更好。優點:占地小。缺點:當選擇的城市區域過多的時候,選擇麻煩。所以在功能相對不那么頻繁用到的時候,可選擇此控件。
三、人員選擇控件:根據有組織層級的人員選擇還是無組織層級人員選擇,有兩種交互設計方式,無組織層級的人員選擇,搜索框+人員列表即可。有組織層級的人員選擇,可通過單頁面組織分類,平鋪顯示人員,也可以通過頁面層層下鉆的形式,選擇人員。
以上就是我個人的一些總結,如有不妥之處,不吝賜教。
- E N D -