我正在使用第三方库:SingleDateTimePicker
https ://github.com/florent37/SingleDateAndTimePicker
这是在日期和时间屏幕底部显示对话框的好方法。这就是我的做法:
new SingleDateAndTimePickerDialog.Builder(getContext())
.displayMinutes(false)
.bottomSheet()
.curved()
.displayListener(new SingleDateAndTimePickerDialog.DisplayListener(){
@Override
public void onDisplayed(SingleDateAndTimePicker picker) {
System.out.println("displayed");
}
})
.title("Select Time")
.listener(new SingleDateAndTimePickerDialog.Listener() {
@Override
public void onDateSelected(Date date) {
System.out.println(date.toString());
...
...
}
})
.display();
我唯一的问题是,当拾音器弹出后屏幕时不会变暗以强调弹出窗口(例如对话框片段)。有没有办法手动调暗背景?
我试图将上面的库放在自己的布局中并从 a 膨胀它DialogFragment
,但是使用这种方法我不知道如何调用onDateSelected
来获取日期
(同时,DialogFragment 强加了某些布局参数,例如,对话框必须位于屏幕中间,并且不能有这样的宽度match_parent
。这就是为什么我不认为将它放在 Dialog Fragment 中的方式去)
注意:非选择器区域是可点击的。即当点击选择器区域消失
这就是我要的: