Android开发——通过使用getResource.getIdentifier() 获取layout中组件id
2014-09-29 19:38
447 查看
近期想优化一下之前的Android程序,主要是在获取layout中组件的时候,如果总是通过下面代码来获取id并调用的话实在是太麻烦了,代码量太大,而且太不美观了!
EditText ed1 = (EditText) AAcharge.this.popView.findViewById(R.id.pay1);
所以就想有没有什么方法通过循环来获取id,然后再去调用呢?通过各种搜索,比较杂吧,现在就做个笔记,防止以后忘记了!
主要是通过getResources().getIdentifier()来获取,如下:
这样,我们通过传递字符串pay1就可以得到对应的id值,然后:
EditText ed1 = (EditText) AAcharge.this.popView.findViewById(id1);请不要在意前面的AAcharge.this.popView,实际中只要是用到findViewById都可以通过上面的方法先获取id1再去获取组件。
那么,这样做的好处是什么呢?就像我前面说的,我是想通过循环来获取id,然后这样就以批次的获得组件,增加了程序的灵活性。这样我们可以通过下面的循环来获取资源或layout的id等信息了!
for (int k =0;k<num.length;k++){
id[k] = getResources().getIdentifier("pay"+k, "id", getPackageName());
ed[k] = (EditText) AAcharge.this.popView.findViewById(id[0]);
}
是不是很方便啊~~
EditText ed1 = (EditText) AAcharge.this.popView.findViewById(R.id.pay1);
所以就想有没有什么方法通过循环来获取id,然后再去调用呢?通过各种搜索,比较杂吧,现在就做个笔记,防止以后忘记了!
主要是通过getResources().getIdentifier()来获取,如下:
id1 = getResources().getIdentifier("pay1", "id", getPackageName());
这样,我们通过传递字符串pay1就可以得到对应的id值,然后:
EditText ed1 = (EditText) AAcharge.this.popView.findViewById(id1);请不要在意前面的AAcharge.this.popView,实际中只要是用到findViewById都可以通过上面的方法先获取id1再去获取组件。
那么,这样做的好处是什么呢?就像我前面说的,我是想通过循环来获取id,然后这样就以批次的获得组件,增加了程序的灵活性。这样我们可以通过下面的循环来获取资源或layout的id等信息了!
for (int k =0;k<num.length;k++){
id[k] = getResources().getIdentifier("pay"+k, "id", getPackageName());
ed[k] = (EditText) AAcharge.this.popView.findViewById(id[0]);
}
是不是很方便啊~~
相关文章推荐
- Android 通过resource名称或者layout中定义的id name 去获取R.java中id,得到控件
- 使用Context.getResource().getIdentifier()获取资源文件ID
- Android 获取资源ID方法,SDK开发中利用getIdentifier()方法获取资源ID
- Android用getIdentifier()获取资源Id
- Android Map Api 使用和开发(3)浮动搜索框 ,通过地址名称获取经纬度和详细地址并定位
- Android之网络----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android应用开发---关于SQL中通过cursor获取指定id的内容
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- Android利用资源名称获取其ID(一)--->getIdentifier()
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- Android 使用三种方式获取网页(通过Post,Get进行表单的提交)
- Android Map Api 使用和开发(3)浮动搜索框 ,通过地址名称获取经纬度和详细地址并定位
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- Android利用资源名称获取其ID(一)--->getIdentifier()
- Android Map Api 使用和开发(3)浮动搜索框 ,通过地址名称获取经纬度和详细地址并定位
- Android Map Api 使用和开发(3)浮动搜索框 ,通过地址名称获取经纬度和详细地址并定位
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- Android 使用三种方式获取网页(通过Post,Get进行表单的提交)