1

我有一个按钮,单击 TimePickerDialog 的时间格式应从 12 小时更改为 24 小时,反之亦然。

我知道我必须使用 onPrepareDialog(),但是如何更改 onPrepareDialog 中的时间格式?任何帮助表示赞赏!

谢谢你。

4

2 回答 2

2

终于做了一个工作来实现这一点!而不是使用 onPrepareDialog(),

我使用了一个变量来跟踪时间应该以 24 小时还是 12 小时格式显示。

    Boolean is24HoursSet;

当用户选择 24 小时时将设置为 true,否则设置为 false。

我添加了 2 个常量

    TIME_IN_12_HOURS //and
    TIME_IN_24_HOURS

12 小时和 24 小时格式。

在触摸监听器中,它调用 showDialog()。

    //checks the variable, and calls according showdialog.
    if(is24HoursSet)
    {
        showDialog(START_TIME_24);
    }
    else 
    {
        showDialog(START_TIME_12);
    }

在 onCreateDialog() 的切换案例中通过为 TimePickerDialog 创建新对象来处理,将 true 或 false 作为构造函数的最后一个参数,它打开具有相应时间格式的 timpicker。:)

于 2012-10-23T09:15:28.270 回答
1

是不是你要找的:

setIs24HourView(Boolean is24HourView);

文档

于 2012-10-23T06:06:47.870 回答