如何在没有xml的情况下更改TimePicker的timePickerMode微调器?

时间:2017-04-03 11:22:20

标签: android

我正在制作一个使用动态时间选择器的项目。我创建了我的时间选择器,但它是默认时钟模式。我想用旋转模式改变它。如何在我的活动课程中更改它?

这是我的代码:

TimePicker timePicker = new TimePicker(this);
LinearLayout ll = (LinearLayout)findViewById(R.id.linearLayout1_);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
ll.addView(timePicker, lp);

2 个答案:

答案 0 :(得分:0)

看起来此属性没有setter(XML中的标志) 我可以建议你一个解决方法:

创建2个布局文件 - 一个文件包含clock模式下的TimePicker,另一个文件包含spinner模式。然后,您可以使用LayoutInflater对其进行充气,并使用它们,就像使用构造函数创建它们一样。 因此,如果您需要clock,那么您需要为时钟充气。如果你需要一个spinner - 你膨胀微调器

答案 1 :(得分:0)

使用此

    String laterTime;

在您想要的任何地方调用此方法

    private void openTimePicker() {
    Calendar mcurrentTime = Calendar.getInstance();
    int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY);
    int minute = mcurrentTime.get(Calendar.MINUTE);
    TimePickerDialog mTimePicker;
    mTimePicker = new TimePickerDialog(LabCheckOutActivity.this, new TimePickerDialog.OnTimeSetListener() {
        @Override
        public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
            //  seheduleTimeTV.setText( selectedHour + ":" + selectedMinute);
            laterTime = selectedHour + ":" + selectedMinute;
            Log.e("TIME",""+laterTime);


        }
    }, hour, minute, true);//Yes 24 hour time
    mTimePicker.setTitle("Sehedule Time");

    mTimePicker.show();
}