0

我有一个应用程序,其中我使用自定义可绘制对象作为按钮背景。但是,我没有为聚焦、选定等状态创建单独的可绘制对象。

我的问题是,如果没有定义额外的 Drawable,是否可以使用默认的 Android.Holo 颜色(蓝色)突出显示按钮?

4

1 回答 1

0

您可以使用选择器(状态列表),然后将其分配给布局中的视图,以修改视图在不同事件期间的行为方式。

所以选择器(我们称之为 myselector)可能看起来像这样:

<?xml version="1.0" enconding "utf-8">
<selector xmlns:android="http://schemas.android.com/apk/res/android"
     //When the view gets pressed the drawable gets set. 
     //You could also use android:color
     <item android:state_pressed="true"
           android:drawable="<Your drawable>"

     <item android:state_focused="true"
           android:drawable="<Another drawable>">

 </selector>

然后在布局中设置按钮的选择器(如果需要,也可以在代码中):

<Button
  android:id="@+id/mybutton"
  android:text="Click me!"
  android:background="@drawable/myselector" //Here the selector is set
/>

应该就是这样。您可以在此处阅读选择器/状态列表。

希望这可以帮助。

于 2013-07-05T00:41:01.220 回答