Android时间选择器显示两个时钟?

Android时间选择器显示两个时钟?,android,timepicker,Android,Timepicker,我已经根据Android开发文档实现了Android时间选择器,一切正常,但我有一个奇怪的bug。我找了很多,但没有找到任何东西,所以,我在这里问 这是我的时间选择器: 下面是它的代码: class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetListener { @Override public Dialog onCre

我已经根据Android开发文档实现了Android时间选择器,一切正常,但我有一个奇怪的bug。我找了很多,但没有找到任何东西,所以,我在这里问

这是我的时间选择器:

下面是它的代码:

 class TimePickerFragment extends DialogFragment
            implements TimePickerDialog.OnTimeSetListener {

        @Override
        public Dialog onCreateDialog(Bundle savedInstanceState) {
            // Use the current time as the default values for the picker
            final Calendar c = Calendar.getInstance();
            int hour = c.get(Calendar.HOUR_OF_DAY);
            int minute = c.get(Calendar.MINUTE);

            // Create a new instance of TimePickerDialog and return it
            return new TimePickerDialog(getActivity(), this, hour, minute,
                    DateFormat.is24HourFormat(getActivity()));
        }

        public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
            // Do something with the time chosen by the user
            if (hourOfDay < 10) {
                startTime.setText("0" + Integer.toString(hourOfDay) + ":" + Integer.toString(minute));
            } else if (minute < 10) {
                startTime.setText(Integer.toString(hourOfDay) + ":0" + Integer.toString(minute));
            } else if (hourOfDay < 10 && minute < 10) {
                startTime.setText("0" + Integer.toString(hourOfDay) + ":0" + Integer.toString(minute));
            } else if (minute == 0) {
                startTime.setText(Integer.toString(hourOfDay) + ":00");
            } else
                startTime.setText(Integer.toString(hourOfDay) + ":" + Integer.toString(minute));
        }
    }
class TimePickerFragment扩展了DialogFragment
实现TimePickerDialog.OnTimeSetListener{
@凌驾
创建对话框上的公共对话框(Bundle savedInstanceState){
//使用当前时间作为选择器的默认值
最终日历c=Calendar.getInstance();
int hour=c.get(日历小时);
int minute=c.get(Calendar.minute);
//创建TimePickerDialog的新实例并返回它
返回新的TimePickerDialog(getActivity(),this,hour,minute,
DateFormat.is24HourFormat(getActivity());
}
时间集上的公共void(时间选择器视图,整数小时日,整数分钟){
//用用户选择的时间做一些事情
如果(小时/天<10){
startTime.setText(“0”+整数.toString(hourOfDay)+“:”+整数.toString(分钟));
}否则,如果(分钟<10){
startTime.setText(Integer.toString(hourOfDay)+“:0”+Integer.toString(分钟));
}否则如果(小时/天<10分钟<10分钟){
startTime.setText(“0”+整数.toString(hourOfDay)+“:0”+整数.toString(分钟));
}否则如果(分钟==0){
startTime.setText(整数.toString(hourOfDay)+“:00”);
}否则
startTime.setText(Integer.toString(hourOfDay)+“:“+Integer.toString(分钟));
}
}
有人知道如何解决这个问题吗

TimePickerDialog (Context context, 
            int themeResId, 
            TimePickerDialog.OnTimeSetListener listener, 
            int hourOfDay, 
            int minute, 
            boolean is24HourView)
是24小时视图:这是24小时视图还是上午/下午视图

尝试将此参数设置为false,我认为您将得到您想要的


参考资料:

我在三星设备上遇到了同样的问题(在我的例子中是Galaxy S5和S6)。我发现在这个设备上,标题是由系统添加的,要隐藏该标题,您需要做的就是自己将其设置为null。


在这里发布相关代码。代码的图片是无用的。你能试试类似于
dialog.requestWindowFeature(Window.FEATURE\u NO\u TITLE)的东西吗@AkshayShinde我调用dialog.requestWindowFeature(Window.FEATURE\u NO\u TITLE)时收到了这个消息;添加内容之前必须调用android.util.AndroidRuntimeException:requestFeature()。您可以做的是,创建一个没有标题栏的样式,并将其应用于您的TimePickerDialog。代码中的开始时间是什么?这是你添加的
TextView
吗?他想从对话框标题中删除额外的时间。
TimePickerDialog dialog = new TimePickerDialog(getActivity(), this, hour, minute, false);
dialog.setTitle(null);