Android 通过名称获取资源ID

本文介绍了在Android开发中如何根据资源名称动态获取资源ID,避免手动维护名称与ID的映射关系。通过解析R文件的结构,实现了一个简单的工具类,可用于获取控件ID、图片ID和字符串ID。
摘要由CSDN通过智能技术生成

一.为什么要这么做

我们已经习惯使用 R.id.btn、R.drawable.bg_img 这种方式获取资源了,这样写确实很方便。
但是有一个问题,比如我们根据服务器的返回的名称选择本地不同的图片进行展示,但是服务器返回的一般都是图片的名称,不可能返回资源的id。

1)首先,你得知道,比如服务器返回一个值 picName,我们是不能通过拼接字符串 “R.drawable.”+picName 获得图片资源的 id 的。
2)如果资源比较少,你可以建立一个名称和 id 的Map映射,但是资源很多的情况下,维护这个映射关系花费实在是有点大啊兄弟。

二.怎么做

1)先看一下Android项目中的R文件

 public static final class attr {
   
    }
    public static final class dimen {
   
        /**  Default screen margins, per the Android Design guidelines. 

         Customize dimensions originally defined in res/values/dimens.xml (such as
         screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here.

         */
        public static final int activity_horizontal_margin=0x7f040000;
        public static final int activity_vertical_margin=0x7f040001;
    }
    public 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值