簡體   English   中英

為什么TimePicker對話在三星Marshmallow 6.0.1上是空白的?

[英]Why Is TimePicker Dialog Blank On Samsung Marshmallow 6.0.1?

在Nexus 4上的Lollipop 5.1.1和模擬器上的Marshmallow 6.0.1上, TimePickerDialog出現在我的應用程序中,如下所示:

但是,在運行Marshmallow 6.0.1的Samsung S6 Edge上,它出現如下:

完全空白。

TimePickerDialog初始化如下:

Calendar calendar = Calendar.getInstance();
Dialog timeDialog = new TimePickerDialog(androidContext, this, calendar.get(Calendar.HOUR_OF_DAY), calendar.get(Calendar.MINUTE), true);
timeDialog.setTitle("Set Appointment Time");
timeDialog.show();

我不知道為什么發生這種情況,但我已經通過使用cirit提供的解決方案解決此問題的工作在這里 他正在解決另一個問題,但它也解決了這個問題。

cirit提供的解決方案是將TimePicker小部件放入AlertDialog。 我對他/她的解決方案的實現如下所示:

private void showTimePicker() {

    // This is implemented using an AlertDialog and a TimePicker instead of a TimePickerDialog
    // because the TimePickerDialog implementation on Samsung does not work.
    final Calendar c = Calendar.getInstance();
    c.setTimeInMillis(getInternalTimestamp());

    final TimePicker timePicker = new TimePicker(mContext);
    timePicker.setIs24HourView(DateFormat.is24HourFormat(mContext));
    timePicker.setCurrentHour(c.get(Calendar.HOUR_OF_DAY));
    timePicker.setCurrentMinute(c.get(Calendar.MINUTE));

    final AlertDialog timePickerDialog = new AlertDialog.Builder(mContext)
            .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // user clicked OK - store the result, perhaps by using a callback:
                    // myCallback.onTimeSet(timePicker, timePicker.getHour(), timePicker.getMinute();
                }
            })
            .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                }
            })
            .setView(timePicker).show();
}

不漂亮,但它有效(對我而言)並不像我擔心的那樣難看。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM