我有一个 DialogPreference,它实现了一个简单的 TimePicker.OnTimeChangedListener(见下文)。通过单击 +/- 按钮设置时间效果很好。但是当用户直接在文本字段中输入时间时,我不知道如何保存时间选择器的状态。访问当前的文本字段值可能就足够了,所以我可以将它保存在 onDialogClosed 中。但是 timePicker.getCurrentHour() 不会这样做。请帮忙...
public class TimePreference extends DialogPreference implements
TimePicker.OnTimeChangedListener {
// ...
@Override
public void onTimeChanged(TimePicker view, int hours, int minutes) {
selectedHours = hours;
selectedMinutes = minutes;
}
@Override
public void onDialogClosed(boolean positiveResult) {
if(positiveResult) {
String timeString = selectedHours + ":" + selectedMinutes;
if(isPersistent()) {
persistString(timeString);
}
}
}
// ...
}