jbl*_*blz 14 string layout android hex
我正在尝试将hex color我的文本的值存储在strings.xml中,因此所有布局文件都将引用它(以便能够快速更改项目的所有布局文本)但是我无法引用它.
用android:textColor="#FFFFFF"我的XML布局工作正常.但是android:textColor="@strings/textColor",当我包含#而不包括时,使用会给我一个错误.
当我不包括#它要求#.当我添加#DDMS报告时:
07-13 04:35:22.870:ERROR/AndroidRuntime(331):引起:android.content.res.Resources $ NotFoundException:来自可绘制资源ID的文件#FF0000#0x7f040003:.xml扩展名需要
有谁知道如何在布局文件中组合语句?例如textColor="#"+"@strings/textColor,然后只需将字符串设置"FFFFFF"为.
chr*_*man 27
您需要在xml中创建一组样式(定期在res/values/styles.xml中)
<color name="gray">#eaeaea</color>
<color name="titlebackgroundcolor">#00abd7</color>
<color name="titlecolor">#666666</color>
Run Code Online (Sandbox Code Playgroud)
在布局文件中,您可以调用颜色或样式:
android:textColor="@color/titlecolor"
Run Code Online (Sandbox Code Playgroud)
查看一些示例:
http://developer.android.com/guide/topics/ui/themes.html
您可以声明显式颜色资源.按照惯例,它们放在res/values/colors.xml中:
<resources>
<color name="my_color">#FFFFFFFF</color>
</resources>
Run Code Online (Sandbox Code Playgroud)
然后在布局或其他地方你可以写 android:textColor="@color/my_color"
为此,您可以做一件事:在values文件夹中定义colors.xml,然后使用#添加颜色值,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="myColor">#000000</color>
</resources>
Run Code Online (Sandbox Code Playgroud)
那么如何在应用程序中引用此颜色值:
静态的:
android:textColor="@color/myColor"
Run Code Online (Sandbox Code Playgroud)
编码:
TextView1.setTextColor(R.color.myColor);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
38535 次 |
| 最近记录: |