Java TimePickerFragment未在所有android设备上调用onTimeSet方法
我正在我的android应用程序中实现时间选择器对话框。我想在对话框中设置3个按钮,“设置”、“清除”、“取消” 我正在使用TimePickerFragment,我已经完成了这方面的代码,但它并没有在所有android设备上正常工作,在一些设备上它工作得很好,但在一些设备上它不是 我正在使用以下代码:-Java TimePickerFragment未在所有android设备上调用onTimeSet方法,java,android,timepicker,android-timepicker,Java,Android,Timepicker,Android Timepicker,我正在我的android应用程序中实现时间选择器对话框。我想在对话框中设置3个按钮,“设置”、“清除”、“取消” 我正在使用TimePickerFragment,我已经完成了这方面的代码,但它并没有在所有android设备上正常工作,在一些设备上它工作得很好,但在一些设备上它不是 我正在使用以下代码:- public class TimePickerFragment extends DialogFragment implements OnTimeSetListener {
public class TimePickerFragment extends DialogFragment implements
OnTimeSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
final Calendar c = Calendar.getInstance();
hour = c.get(Calendar.HOUR_OF_DAY);
min = c.get(Calendar.MINUTE);
final TimePickerDialog timePickerDialog = new TimePickerDialog(
getActivity(), this, hour, min, true);
timePickerDialog.setButton(DialogInterface.BUTTON_POSITIVE,
getActivity().getResources().getString(R.string.done1),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
isTimeSet = true;
System.out.println("only true");
}
});
timePickerDialog.setButton(DialogInterface.BUTTON_NEGATIVE,
getActivity().getResources().getString(R.string.cancle),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
isTimeSet = false;
System.out.println("only false");
//tvTime1.setText(userAlarmStartTime);
}
});
timePickerDialog.setButton(DialogInterface.BUTTON_NEUTRAL,
getActivity().getResources().getString(R.string.clear),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
isTimeSet = false;
System.out.println("only neutral");
tvTime1.setText("");
}
});
return timePickerDialog;
}
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
// System.out.println("value in time set:- " + isTimeSet);
if (isTimeSet) {
String userAlarmStartTime;
if (minute < 10) {
userAlarmStartTime = hourOfDay + ":0" + minute;
} else {
userAlarmStartTime = hourOfDay + ":" + minute;
}
tvTime1.setText(userAlarmStartTime);
}
}
}
当我在某些设备上调试代码时,它不会调用onTimeSet()
方法,但在某些设备上它会调用该方法
关于这一点,我已经搜索了很多,但我找不到任何能帮助我解决问题的东西
有人能告诉我哪里出了问题吗?请看一下它的完美之处,谢谢
DialogFragment newFragment = new TimePickerFragment();
newFragment.show(getFragmentManager(), "timePicker");