今天在写Android程序的时候,需要引用R.java文件中一些资源。如:R.color.color1
但是我弄了半天都不能在R.java文件中新建color的新类,原因很简单,R.java是不能被编辑的。虽然一早就知道这一点,不过我还是想试一试,不过事实证明,R.java文件是不能被编辑的。
然后我就想能不能通过在res文件夹下新建一个新的文件夹来搞定,事实证明,我又逗逼了。。。
我们应该在res/values下新建一个colors.xml文件,当然如果不建也是可以的,在我们默认的strings.xml里写标签也是可以的,不过作为一个正常人都应该这样写是一种不伦不类的做法。
当我们的colors.xml文件新建完成后,我们在文件里写如下代码:
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="color1">#00f</color> <color name="color2">#0f0</color> <color name="color3">#f00</color> <color name="color4">#0ff</color> <color name="color5">#f0f</color> <color name="color6">#f00</color> </resources>
然后我们就可以在R.java文件中看到我们思慕已久的
public static final class color { public static final int color1=0x7f040000; public static final int color2=0x7f040001; public static final int color3=0x7f040002; public static final int color4=0x7f040003; public static final int color5=0x7f040004; public static final int color6=0x7f040005; }
这样在我们的Activity文件中就可以做一个这样的引用:
final int[] colors = new int[]{ R.color.color1, R.color.color2, R.color.color3, R.color.color4, R.color.color5, R.color.color6 };