我想实现一个选择时间并返回它的方法,比如
public static int pickTime(Context context, int minuteOfDay) {
final int[] result = {-1};
final OnTimeSetListener listener = new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int hourOfDay, int minute) {
result[0] = 60*hourOfDay + minute;
}
};
new MyTimePickerDialog(context, listener, minuteOfDay/60, minuteOfDay%60, false).show();
return result[0];
}
只是发现对话框立即返回,因此我的方法总是返回-1。
这是我可以忍受的事情,但是,我很好奇这样的事情是否可能。我不在乎应用程序在等待输入时是否工作,因为TimePicker
无论如何它几乎占据了整个屏幕。
请注意,标准解决方案对我有用,但我认为这是一个很好的练习,可以更好地理解系统。