android资源文件中ids.xml的使用
前面我们见识过ids.xml文件,但是这个文件是什么意思呢?我们来看下文档中的介绍:
先看下它给的例子:
XML file saved atres/values/ids.xml:
使用方式:
一: android:id="@id/button_ok"
二:Button btn=new Button(context);
btn .setId(context.getResources().getInteger(R.id.button_ok));//错误用法
btn.setId(R.id.button_ok);//正确用法
红色部分的书写形式是不正确的,我们直接使用btn.setId(R.id.button_ok);就OK,如果用红色部分的话就会报一个无法找见资源的错误.
使用这两种方式都是可以的,如果我们用了ids.xml我们就有以下的几个好处:
1.命名方便,我们可以把一些特定的控件先命好名,我们在使用的时候直接在我们的布局中设置id,省去了一个命名环节。
2.在我们写代码布局的时候,我们在设置ID的时候,我们就需要使用这种方式为我们的控件来命名了,在查找的时候它就可以去R文件中查找相应的ID,然后进行转换。
注意:在ids.xml中的每一项目也会生成成到R文件中的,如我们上面的ids.xml在我们的R文件中会生成下面的对照:
public static final class id {
public static final int button_ok=0x7f080000;
public static final int dialog_exit=0x7f080001;
我们在使用的时候,不管哪种方式设置的id,都是一样的:
findViewById(R.id.xxx);
更多相关文章
- android 签名打包和出现的问题transformClassesAndResourcesWith
- Android平台如何确定deconfig及dtsi的总结
- android jar包
- static 和 visibility hidden 的区别
- [Android从头再来]Android(安卓)JNI相关开发
- Android(安卓)OOM ,回收布局文件中ImageView占用的内存.Bitmap O
- android分包原理--MultiDex
- Android(安卓)6.0 读写SD卡权限问题(续)
- [Android(安卓)SQLite]数据存储与访问 - 内部存储