我在android中使用datePicker来根据用户选择的日期显示图像.我需要将所述日期限制在特定日期,例如2010年1月1日至2010年12月31日.简单,因为我认为但没有在哪里可以找到关于如何限制这些日期的答案.
有谁知道如何限制Android DatePicker的日期
datepicker中的默认文本大小对我的应用来说太大了.我已经看到了一种建议在这里改变它的方法,但是为了嵌套在datepicker类中的textviews而钓鱼似乎很笨拙且容易出错.
有更好/更清洁的方法吗?
我想在DatePickerDialog中禁用今天日期之前的日期.我是android的新手请建议我怎么能这样做.这是我为DatePickerDialog编写的代码
final DatePickerDialog.OnDateSetListener 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);
updateLabel(val);
}
};
depart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new DatePickerDialog(this, date, myCalendar
.get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
myCalendar.get(Calendar.DAY_OF_MONTH)).show();
val=1;
}
});
returnDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new DatePickerDialog(this, date, myCalendar
.get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
myCalendar.get(Calendar.DAY_OF_MONTH)).show();
val=2; …Run Code Online (Sandbox Code Playgroud) 问题是我的日期选择器在日期选择器后面有一个丑陋的白色背景

我只想让那个背景消失
这是我的代码
public void selectDate(View view) {
DialogFragment newFragment = new SelectDateFragment();
newFragment.show(Master_.fragmentManager, "DatePicker");
}
public void populateSetDate(int year, int month, int day) {
Birthdate.setText(year + "-" + month + "-" + day);
}
public class SelectDateFragment extends DialogFragment implements
DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar calendar = Calendar.getInstance();
int yy = calendar.get(Calendar.YEAR);
int mm = calendar.get(Calendar.MONTH);
int dd = calendar.get(Calendar.DAY_OF_MONTH);
DatePickerDialog dialog =new DatePickerDialog(mActivity,R.style.jehadStyle, this, yy, mm, dd);
dialog.getDatePicker().setMaxDate(calendar.getTimeInMillis());
return dialog ;
}
public …Run Code Online (Sandbox Code Playgroud) DatePicker 默认显示当前月份,但用户可能希望选择数百个月前的日期。当然可以点击年份并以这种方式选择出生年份,但许多用户不知道这一点,大多数用户点击月份以返回年份以选择出生日期。它引起了很大的挫败感。
有没有办法配置Android DatePicker,以便在打开时要求用户首先选择年份?或者是否有一种显示月份的方法,以便用户可以更快地浏览它们而不是单击?还是真的有必要在日期选择器之前创建一个 UI 来要求他们在 DatePicker 打开之前选择年份?我发现 DatePicker 之前用于选择日期非常糟糕,因为它的易用性需要使用许多用户不知道的功能。
我在选项菜单上有这个代码
Dialog dialog = new Dialog(ScheduleActivity.this);
dialog.setTitle("Add Event");
dialog.setContentView(R.layout.add_even_on);
Button datePicker = (Button) dialog.findViewById(R.id.datePicker);
final DialogFragment dateFrag = new MyDatePicker();
datePicker.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
dateFrag.show(getSupportFragmentManager(), "datePicker");
}
});
dialog.show();
Run Code Online (Sandbox Code Playgroud)
时说,选择菜单中的"添加事件"被点击时,会出现一个对话框,有一个按钮,显示DatePickerDialog和它旁边是一个TextView的,反映在选定的日期DatePickerDialog,这里是我的机器人会开发上了班如何使用DatePickerDialog.
class MyDatePicker extends DialogFragment implements DatePickerDialog.OnDateSetListener {
int pYear;
int pDay;
int pMonth;
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR); …Run Code Online (Sandbox Code Playgroud) 在我的应用程序中,我有一个datepicker,我能够在textview中选择和设置所选日期,但问题是如果再次点击textview打开datepicker dailog,它总是显示当前日期而不是最后选择的日期..那么什么是问题?
public class MainActivity extends Activity {
private TextView date_dropdown;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
date_dropdown=(TextView)findViewById(R.id.shows_dt);
Calendar calendar = Calendar.getInstance();
date_dropdown.setText(calendar.get(Calendar.DAY_OF_MONTH) + "-"
+ (calendar.get(Calendar.MONTH) + 1) + "-"
+ calendar.get(Calendar.YEAR));
date_dropdown.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showDatePickerDialog();
}
});
}
public void showDatePickerDialog() {
System.out.println("show date picke dilg ");
System.out.println("show date picke dilg");
DialogFragment newFragment1 = new SelectDateFragment();
newFragment1.show(getFragmentManager(), "DatePicker");
}
public class SelectDateFragment extends DialogFragment implements
DatePickerDialog.OnDateSetListener {
@Override
public Dialog …Run Code Online (Sandbox Code Playgroud) 我在这个库中使用了谷歌材料中的范围日期选择器
实现 'com.google.android.material:material:1.2.0-alpha02'
这是我的代码
MaterialDatePicker.Builder<Pair<Long, Long>> builder =
MaterialDatePicker.Builder.dateRangePicker();
CalendarConstraints.Builder constraintsBuilder = new CalendarConstraints.Builder();
builder.setCalendarConstraints(constraintsBuilder.build());
MaterialDatePicker<Pair<Long,Long>> picker = builder.build();
assert getFragmentManager() != null;
picker.show(getFragmentManager(), picker.toString());
Run Code Online (Sandbox Code Playgroud)
我想自定义对话框选择器更改文本字段,使对话框不是全屏等。我该如何进行所有这些修改
android android-datepicker material-design material-components material-components-android
我有一个关于DatePickerDialog显示的问题.
我想用"HoloDialog"主题创建日期选择器对话框,如下所示:
DatePickerDialog dpd = new DatePickerDialog(this, android.R.style.Theme_Holo_Dialog, reservationDate, 2014, 1, 1);
Run Code Online (Sandbox Code Playgroud)
然后我会看到这个结果:

如您所见,对话框显示为"两个边框".
我想创建与此处显示的相同的对话框,但是有一个边框.可能吗?
我在 Android 中像这样调用 MaterialDatePicker:
MaterialDatePicker.Builder<Pair<Long, Long>> builder = MaterialDatePicker.Builder.dateRangePicker();
CalendarConstraints.Builder constraintsBuilder = new CalendarConstraints.Builder();
builder.setCalendarConstraints(constraintsBuilder.build());
int dialogTheme = resolveOrThrow(getContext(), R.attr.materialCalendarTheme);
builder.setTheme(dialogTheme);
MaterialDatePicker<?> picker = builder.build();
picker.show(getFragmentManager(), picker.toString());
Run Code Online (Sandbox Code Playgroud)
图书馆是:
dependencies {
implementation 'com.google.android.material:material:1.2.0-alpha01'
}
Run Code Online (Sandbox Code Playgroud)
如何获取此日历的选定日期?我找不到任何听众喜欢onDateSet或OnDateSetListener
android android-datepicker material-components material-components-android