我有一个应用程序,其中我使用自定义可绘制对象作为按钮背景。但是,我没有为聚焦、选定等状态创建单独的可绘制对象。
我的问题是,如果没有定义额外的 Drawable,是否可以使用默认的 Android.Holo 颜色(蓝色)突出显示按钮?
问问题
316 次
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 回答