我想禁用android sdk日期選擇器上的日期選擇選項。任何簡單的XML配置將是最好的如何顯示只有月份和年份字段的Android日期選取器?
回答
我剛剛發佈了一個新的日期選擇器框架,它允許您創建自定義日期選擇器。我還提供了一些示例日期選擇器,例如您正在尋找的日期選擇器。希望,它適用於你。
代碼可以在這裏找到:https://github.com/bendemboski/DateSlider
UPDATE 06/2014: 這個庫的開發2010年一直沒有維護2011年以來所以這是最有可能過時了現在。
編輯:根據下面的評論,我不會按照這個答案了。
我不認爲你可以做到這一點與默認日期選擇器。您必須從基本的Android UI元素中創建它。但是,不要去那麼麻煩,爲什麼不使用更好的庫元素,比如這個看起來很漂亮的iPhone式輪子:http://code.google.com/p/android-wheel/我還沒有使用它,但我打算!
2011年1月這並不是壞的建議,但如果你現在正在閱讀,我建議不要使用模仿iOS的庫。谷歌不喜歡:http://developer.android.com/design/patterns/pure-android.html – theelfismike 2013-01-30 16:39:50
用戶也不喜歡那 – Roel 2015-04-07 09:23:44
有可能使用反射破解DatePicker實例。這樣,您就可以訪問代表DatePicker當天的NumberPicker實例:
datePicker = (DatePicker) findViewById(R.id.expiration_date);
try {
Field f[] = datePicker.getClass().getDeclaredFields();
for (Field field : f) {
if (field.getName().equals("mDayPicker")) {
field.setAccessible(true);
Object dayPicker = new Object();
dayPicker = field.get(datePicker);
((View) dayPicker).setVisibility(View.GONE);
}
}
} catch (SecurityException e) {
Log.d("ERROR", e.getMessage());
}
catch (IllegalArgumentException e) {
Log.d("ERROR", e.getMessage());
} catch (IllegalAccessException e) {
Log.d("ERROR", e.getMessage());
}
這在2.2版本中正常工作。但對話框的標題沒有改變。
for (Field datePickerDialogField : datePickerDialogFields) {
if (datePickerDialogField.getName().equals("mDatePicker")) {
datePickerDialogField.setAccessible(true);
DatePicker datePicker = (DatePicker) datePickerDialogField.get(datePickerDialog);
Field datePickerFields[] = datePickerDialogField.getType().getDeclaredFields();
for (Field datePickerField : datePickerFields) {
if ("mDayPicker".equals(datePickerField.getName())) {
datePickerField.setAccessible(true);
Object dayPicker = new Object();
dayPicker = datePickerField.get(datePicker);
((View) dayPicker).setVisibility(View.GONE);
}
}
}
}
可以使用https://github.com/SimonVT/android-datepicker部件的回遷的兼容性,使這一天選擇器 '走了'
<net.simonvt.numberpicker.NumberPicker
android:id="@+id/day"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dip"
android:layout_marginRight="16dip"
android:focusable="true"
android:focusableInTouchMode="true"
android:visibility="gone"
/>
說起反映這部作品在是Android 4.4.2 SDK的
"mDaySpinner"
代替
"mDayPicker"
我認爲這是最好的解決方案
datePicker.findViewById(Resources.getSystem().getIdentifier("day", "id", "android")).setVisibility(View.GONE);
- 1. iPhone:只有月份和年份字段的日期選擇器
- 2. 如何設置datepicker的日期只顯示月份和年份
- 3. 如何更改我的日期選擇器只顯示月,日期和年份
- 4. Android:僅有月份和年份的日期選擇器
- 5. jQuery的日期選擇器只月份和年份
- 6. android:如何在android中的日曆日期中顯示月份和年份?
- 7. 如何創建jQuery UI的日期選擇器當前的月份和日期和年份只顯示
- 8. 使用j查詢日期選擇器只顯示月份和年份
- 9. 僅在Xamarin表單中顯示日期選取器中的月份和年份
- 10. Django SelectDateWidget只顯示月份和年份
- 11. 如何使用SimpleDateFormat解析日期只有月份和年份
- 12. 只有日期和月份的Android日期選擇器
- 13. 根據月份和年份獲取日期字段
- 14. 如何使用UIPickerView顯示日期月份和年份(Upto 2015)?
- 15. 如何在720kb中顯示月份和年份AngularJS日期選擇器
- 16. 顯示日期,月份和年份代替當前的日期,月份和年份
- 17. 如何獲取日曆上顯示的月份和年份
- 18. JAVA如何取日期並查看日期,月份和年份?
- 19. 顯示月份和年份
- 20. 日期選擇器月份和年份選定的錯誤
- 21. Django DateField的日曆只顯示月份和年份?
- 22. 在R中只有月份和年份的格式日期
- 23. 只有年份和月份的日期對象
- 24. 僅創建月份和年份的日期字段 - Drupal
- 25. LINQ如何按日期分組日期和月份和年份
- 26. 日期選擇與日期,月份和年份單獨的框
- 27. 月份和年份的日期轉換
- 28. 計算月份和年份的日期
- 29. 在SQL中顯示當前日期的年份和月份
- 30. 顯示DateTimePicker上的年份,月份和日期iOS
你試過什麼嗎?您是否使用搜索引擎搜索解決方案? – Patrick 2010-11-08 10:29:44
事實上,我確實發現人們說它是不可能的,這是不正確的,但我沒有清楚如何向前推進,但它的可能性。謝謝 – carbonr 2010-11-11 05:06:40