带有微调器的 TimePicker?

TimePicker with Spinners?

我正在尝试构建一个 TimePickerDialog,但不幸的是,出现的时间选择器使用起来非常麻烦:

有什么方法可以像 Android 以前那样构建一个时间选择器,如下所示:

我的代码如下:

    ButtonTime.Click += delegate
    {
        ShowTimePickerDialog();
    };

    void ShowTimePickerDialog()
    {
        var dialog = new TimePickerDialogFragment(this, hour, minute, this);

        dialog.Show(FragmentManager, null);
    }

我会说使用 Holo 主题。 我指的是在 Whosebug 上关注 ,您可能会发现它很有用。

正在添加新的 xml 样式

<?xml version="1.0" encoding="utf-8" ?>
<resources>
  <style name="SpinnerTimePicker" parent="android:Widget.Material.Light.TimePicker">
    <item name="android:timePickerMode">spinner</item>
  </style>

  <style name="ClockTimePicker" parent="android:Widget.Material.Light.TimePicker">
    <item name="android:timePickerMode">clock</item>
  </style>
</resources>

然后在 MainTheme 中将时间选择器样式设置为 SpinnerTimePicker

 <item name="android:timePickerStyle">@style/SpinnerTimePicker</item>

android:timePickerMode 定义小部件的外观。在 L 发布之前,唯一的选择是微调器。从 L 开始,使用 Material 主题 selected,默认布局是时钟,但可以使用此属性强制使用微调器。

必须是以下常量值之一。

常量值说明 clock 2 带有钟面的时间选择器 select 时间。 微调器 1 带有微调器控件的时间选择器 select 时间。

来自文献

https://developer.android.com/reference/android/widget/TimePicker.html#attr_android:timePickerMode