我想禁用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. 如何设置datepicker的日期只显示月份和年份
- 2. 如何更改我的日期选择器只显示月,日期和年份
- 3. 如何创建jQuery UI的日期选择器当前的月份和日期和年份只显示
- 4. Django SelectDateWidget只显示月份和年份
- 5. 如何使用SimpleDateFormat解析日期只有月份和年份
- 6. 根据月份和年份获取日期字段
- 7. 如何在720kb中显示月份和年份AngularJS日期选择器
- 8. 如何获取日历上显示的月份和年份
- 9. JAVA如何取日期并查看日期,月份和年份?
- 10. Django DateField的日历只显示月份和年份?
- 11. LINQ如何按日期分组日期和月份和年份
- 12. 显示DateTimePicker上的年份,月份和日期iOS
- 13. 计算月份和年份的日期
- 14. 月份和年份的日期转换
- 15. jquery UI日期选择器月份和年份只有css定位问题
- 16. 日期选取器没有在编辑文本中获取月份和年份
- 17. Plone 4:CalendarWidget仅显示年份,无日期和月份
- 18. 在IOS中设置日期选择器只选择月份和年份
- 19. mysql:按年份和月份(无日期)如何做日期
- 20. 只月份和年份
- 21. 从给定日期获取月份,日期和年份
- 22. 如何在DateTimePicker控件中只显示月份和年份
- 23. 如何在wordpress文章中只显示月份和年份
- 24. Scala - 获取特定年份的所有月份和日期
- 25. 显示自定义字段的年份和月份+年龄计算器
- 26. 如何从DatePickerDialog获取日期,月份和年份?
- 27. 如何找到有结束日期比年份和月份
- 28. 月份和年份的有效期限
- 29. 如何在SSRS日期选取器(日历)控件中选择年份和月份以及日期?
- 30. 如何从QML Calender返回的日期提取日期,月份和年份?
你试过什么吗?您是否使用搜索引擎搜索解决方案? – Patrick 2010-11-08 10:29:44
事实上,我确实发现人们说它是不可能的,这是不正确的,但我没有清楚如何向前推进,但它的可能性。谢谢 – carbonr 2010-11-11 05:06:40