如何限制DatePickerDialog选择过去2 - 12年或当前日期0 - 2年的日期?
我在活动中有DatePickerDialog,用于获取儿童和婴儿的出生日期.儿童年龄为(2-12岁),婴儿年龄为(0-2岁).如果我通过1,那么年龄限制应该是(2-12岁),如果我通过2岁,年龄限制应该是(0-2岁).
我该怎么做才能在我的日历中获得此功能?
我的日历代码是:
date = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
String myFormat = "dd/MM/yy"; //In which you need put here
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
dateofBirth.setText(sdf.format(myCalendar.getTime()));
}
};
dateofBirth.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
showDialog(DATE_DIALOG_ID);
}
});
public Dialog onCreateDialog(int id) {
final …Run Code Online (Sandbox Code Playgroud) 我想更改Android中日期/时间选择器对话框的默认颜色,以便它应该与我的应用程序的主题相匹配.我在Google上搜索了解决方案,但我找不到解决方案.
我正在做的是创造一种新的风格:
<style name="datepicker" parent="@android:style/Widget.DeviceDefault.DatePicker">
<!---TODO-->
<item name="android:focusedMonthDateColor">@android:color/holo_red_dark</item>
</style>
Run Code Online (Sandbox Code Playgroud)
不知道日期选择器对话的可用属性是什么.如果有人能发布链接就会很棒
添加样式后,我将其称为主要样式
<item name="android:datePickerStyle">@style/datepicker</item>
Run Code Online (Sandbox Code Playgroud)
不幸的是,这对我来说根本不起作用.
android android-datepicker android-timepicker android-styles
我有ScrollView一个Datepicker
在以前的Android版本中,Datepicker是这样的:

我可以滚动Datepicker日,月,年的单个元素没有问题
在Android Lollipop API level 21 Material中,Datepiker以这种方式显示:


如果我点击月份显示日历视图而我无法更改月份,我只能选择当天.如果我尝试编辑年份显示年份滚动条,但如果我尝试滚动它,则包含datepicker的整个布局将滚动,而不仅仅是日期.
calendarViewShown=false
Run Code Online (Sandbox Code Playgroud)
似乎被忽视了
我怎么能解决这个问题???
android datepicker android-datepicker datepickerdialog android-5.0-lollipop
我正在尝试使用一个看起来像微调器的文本框来激活日期选择器对话框.这可以在Google日历应用和ICS上的通讯录应用(生日)中完成.我是否需要使用微调器,如果是这样,我如何将其输入视图更改为日期选择器?或者如果没有,我如何获得文本视图以获得通常表示微调器的小三角形?
android android-datepicker android-spinner android-4.0-ice-cream-sandwich
DatePicker当我EditText点击时,我正试图弹出一个对话框.问题是,当我尝试Calender使用Calender.getInstance()下面出现的令人毛骨悚然的红色下划线来实例化我的对象时getInstance().
Calender myCalender = Calender.getInstance();
Run Code Online (Sandbox Code Playgroud)
它悬停在它上面,它说
呼叫需要API级别24(当前最小值为15).
显然,我希望我的应用程序能够在最低API级别15的设备上运行.请帮助我,我是Android的新手.谢谢.
我正在写我的第一个应用程序,我有一个问题DatePicker.
我的应用程序要求用户输入日期.最用户友好的方式是弹出一个类似日历的小部件,像日历网格一样显示当前月份 - 如下所示:

我想用它来代替DatePicker界面 - 它有月,日和年字段,每个字段都有一个向上和向下按钮来递增/递减.
这种类型的功能内置于任何Android小部件或视图中,还是我必须设计自己的自定义组件来执行此操作?我认为这已经存在,看看这种类型的UI在非移动应用程序和网页中的使用频率如此之高.
谢谢!
我的应用程序中有一个DatePicker和一个TimePicker.任何人都可以告诉我如何获取所选日期和时间的值??? 我的意思是说,因为EditText我们可以宣称为
final EditText name = (EditText) this.findViewById(R.id.nametext);
Run Code Online (Sandbox Code Playgroud)
我们可以使用它来投射它的数据name.getText().toString().
所以类似地我们如何才能将DatePicker和TimePicker的值赋予String?
我在使用棒棒糖5.0在三星note 2设备中创建一个日期选择器时遇到了麻烦.例外是:
java.util.IllegalFormatConversionException: %d can not format java.lang.String arguments
at java.util.Formatter.badArgumentType(Formatter.java:1489)
at java.util.Formatter.transformFromInteger(Formatter.java:1689)
at java.util.Formatter.transform(Formatter.java:1461)
at java.util.Formatter.doFormat(Formatter.java:1081)
at java.util.Formatter.format(Formatter.java:1042)
at java.util.Formatter.format(Formatter.java:1011)
at java.lang.String.format(String.java:1803)
at android.content.res.Resources.getString(Resources.java:1457)
at android.content.Context.getString(Context.java:397)
at android.widget.SimpleMonthView$MonthViewTouchHelper.getItemDescription(SimpleMonthView.java:684)
at android.widget.SimpleMonthView$MonthViewTouchHelper.onPopulateNodeForVirtualView(SimpleMonthView.java:628)
at com.android.internal.widget.ExploreByTouchHelper.createNodeForChild(ExploreByTouchHelper.java:377)
at com.android.internal.widget.ExploreByTouchHelper.createNode(ExploreByTouchHelper.java:316)
at com.android.internal.widget.ExploreByTouchHelper.access$100(ExploreByTouchHelper.java:50)
at com.android.internal.widget.ExploreByTouchHelper$ExploreByTouchNodeProvider.createAccessibilityNodeInfo(ExploreByTouchHelper.java:711)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfVirtualNode(AccessibilityInteractionController.java:1179)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1091)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchDescendantsOfRealNode(AccessibilityInteractionController.java:1087)
at android.view.AccessibilityInteractionController$AccessibilityNodePrefetcher.prefetchAccessibilityNodeInfos(AccessibilityInteractionController.java:888)
at android.view.AccessibilityInteractionController.findAccessibilityNodeInfoByAccessibilityIdUiThread(AccessibilityInteractionController.java:155)
at android.view.AccessibilityInteractionController.access$400(AccessibilityInteractionController.java:53)
at android.view.AccessibilityInteractionController$PrivateHandler.handleMessage(AccessibilityInteractionController.java:1236)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:5944)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372) …Run Code Online (Sandbox Code Playgroud) android exception android-datepicker samsung-mobile android-5.0-lollipop
我在更改对话框按钮的文本时遇到了一些麻烦.
我试着用:
setButton(int whichButton,
CharSequence text,
DialogInterface.OnClickListener listener)
Run Code Online (Sandbox Code Playgroud)
和
setButton(int whichButton, CharSequence text, Message msg)
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚要放什么作为第三个参数.我可以通过一个新的OnClickListener,但我想使用回调DatePickerDialog.OnDateSetListener.
我想,当我设置一个新Listener的Button中DateSetListener不会NE叫了吗?
我试图将Android中的日期选择器的最小和最大日期设置为API级别11之前.我使用以下代码:
mDatePickerField = startDatePickerDialog.getClass().getDeclaredField("mDatePicker");
mDatePickerField.setAccessible(true);
DatePicker startDatePickerInstance =(DatePicker)mDatePickerField.get(startDatePickerDialog);
startDatePickerInstance.init(mYearMin, mMonthMin, mDayMin, new DatePicker.OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) {
Date maxDate = new Date(mYearMax, mMonthMax, mDayMax, 0, 0, 0);
Date selectedDate = new Date(i, i1, i2, 0, 0, 0);
if (selectedDate.after(maxDate)) {
datePicker.updateDate(mYearMax, mMonthMax, mDayMax);
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,该updateDate方法onDateChanged再次触发,并且日期选择器未更新.
任何人都可以帮助解决问题吗?