2013-07-04 41 views
0

我有一个应用程序,我在其中使用自定义可绘制作为按钮背景。 但是,我没有创建专注,选定等状态的独立drawables。

我的问题是,如果没有定义额外的Drawables,是否可以用默认的Android.Holo颜色(蓝色)高亮显示按钮?将主题设置为自定义可绘制按钮

回答

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 
/> 

这就是它。您可以阅读选择器/状态列表here

希望这会有所帮助。

+0

感谢您试图帮助,但这不是我的问题的答案。我想知道是否有可能只用一个可绘制的图案来实现 – Marek

+0

您希望您的按钮在按下时用一种颜色突出显示,否? – Hrafn

+0

是的,但我想使用我的自定义Drawable作为背景(并且我不想为专注状态创建另一个可绘制对象,也因为我不知道Holo主题的确切颜色和透明度值) – Marek

相关问题