Android:将按钮绘制为微调器

我有一个自定义的android视图,它扩展了’Button’并充当了一个多级微调器 – 当它被按下时,它会显示一系列类似微调器的对话框,允许用户优化他们的选择。 在这种情况下,它允许用户选择他们想要发生拾取的日,然后是小时,然后是分钟(以5分钟为间隔)。 当对话框未激活时,按钮上会显示当前选择的文本说明。

我想直观地指出用户可以通过按下按钮来改变选择,并认为微调器的外观正是我所需要的。 我希望外观与设备上的其他微调器相同,并且能够轻松更改按钮上的文本,但我不确定如何在没有它的情况下实现这一点。 我应该如何将按钮显示为与设备上其他微调器一致的微调器图标?

这就是我设法绘制一个像Spinner样式的按钮:

 

而已!

更新

以下内容也应该有效:

  

有关更多样式,请查看SDK,例如sdk/platforms/android-18/data/res/values/styles.xml

我find了解决问题的方法。 在我的按钮的构造函数中,我将背景可绘制资源设置为“btn_dropdown”。

 public DateAndTimePicker(Context context) { super(context); this.setBackgroundResource(android.R.drawable.btn_dropdown); } 

它看起来与微调器按钮相同,按钮行为都没有改变,按钮文本正确居中。

这是我的绘图按钮解决方案,像一个微调器:

  

这是我的res / values / styles.xml的一部分:

  

这是我的res / values-v14 / styles.xml的一部分:

  

这种XML布局使按钮看起来像一个微调器。

   

您可以在按钮上定义android:background属性,以使用看起来像微调器的drawable。 我通过为微调器创建一个9补丁图像,将其放入我的res / drawable文件夹,然后为我的自定义微调按钮添加样式来完成此操作:

  

对于您的按钮,将style属性添加到布局的XML布局: