当前时间选择器

时间:2011-05-20 15:55:34

标签: android time dialog picker

大家好,我正在努力改变时间选择器对话框的显示时间。

以下是有关 onPrepareDialog 方法的Android SDK参考的引文

  

提供准备的机会   托管对话之前   所示。默认实现   调用onPrepareDialog(int,   对话框)兼容性。覆盖   如果您需要更新托管,请执行此操作   基于状态的对话框   应用程序每次显示时。对于   例如,时间选择器对话框可能   想要用当前的更新   时间。你应该打电话给   超类的实现。该   默认实现将设置此   作为业主活动的活动   对话框

onCreateDialog 方法将创建的对话框传递给 onPrepareDialog 作为参数,但如何在此对话框中实际更改小时和分钟?

由于

好的我找到了答案,这是我的PreferenceActivity代码的一部分:

protected void onPrepareDialog(int id, Dialog dialog) {

    if (id == DIALOG_MAX_AGE) {
        SharedPreferences myPref = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
        int time = myPref.getInt(getString(R.string.pr_maxtmagekey), 15);
        int h = time / 100;
        int m = time - h * 100;

        ((TimePickerDialog)dialog).updateTime(h, m);

    }
}

updateTime做的事情。

1 个答案:

答案 0 :(得分:4)

您可以尝试这样的事情:

在onCreate()或您需要的任何地方,使用典型的Java代码获取当前时间:

Calendar c = Calendar.getInstance();
year = c.get(Calendar.YEAR);
month = c.get(Calendar.MONTH);
day = c.get(Calendar.DAY_OF_MONTH);

然后,当您设置时间选择器时,您可以:

... new DatePickerDialog(this, aDateListener, year, month, day);

然后,当您打开时间时,它将始终显示当前时间。

相关问题