Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在选择器xml中使用颜色_Android_Layout_Coding Style - Fatal编程技术网

Android 在选择器xml中使用颜色

Android 在选择器xml中使用颜色,android,layout,coding-style,Android,Layout,Coding Style,我想为单击而不是图像设置颜色。这样做不会产生任何错误,除非在运行时强制关闭。甚至可以这样做,或者选择器只能用于图像 下面是我正在尝试的代码: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_focused="true" android:state_pressed="true" android:background="#00C0FF" /&

我想为单击而不是图像设置颜色。这样做不会产生任何错误,除非在运行时强制关闭。甚至可以这样做,或者选择器只能用于图像

下面是我正在尝试的代码:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_focused="true" android:state_pressed="true" android:background="#00C0FF" />
    <item android:state_focused="true" android:state_pressed="false" android:background="#0060FF" />
    <item android:state_focused="false" android:state_pressed="true" android:background="#00C0FF" />
    <item android:state_focused="false" android:state_pressed="false" android:background="#FFFFFF" />

</selector>


甚至可以这样做,或者选择器只能用于图像

不,这没有任何意义(至少对我来说)。如果没有“drawable”,它如何确切地知道将“what”设置为“state\u focused”和“state\u pressed”

为什么不创建一些单色绘图(例如位图)并将其作为每个项目的绘图?

不是按照


定义可在特定状态下使用的绘图,如其属性所述。必须是元素的子元素。
android:可绘制
可提取资源**必需。**对可提取资源的引用。
您可以创建一个简单的形状来保持颜色

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#33FF33"/>
</shape>


安卓:后台标签可以同时处理这两个问题。如果使用android:background=“@drawable/image”则使用图像,如果android:background=“#FFFFFF”则使用颜色。我看到的效果是,它必须位于drawable文件夹中,这意味着选择器xml应该有自己的文件夹,或者drawable也可以是一种颜色。在资源有限的设备上使用简单颜色的图像是没有意义的。公正的评论。正如我所说,我个人不明白,如果没有能够“聚焦”和“压制”状态的“东西”,它是如何工作的。Daren的回答在你的方法和我的方法之间找到了一个很好的中间点。尽管如此,小型单色图像压缩得非常好(使用最少的资源),并且可以在UI中无需降级即可扩展。此外,我猜android会从形状“创建”一个图像,就像它将是一个图像一样——因此作为一个资源,它将是相当相同的。只是用形状的方式做似乎更好:-)根据定义,这是一个解决这个问题的好办法。塔克斯!
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#33FF33"/>
</shape>