Android使用getIdentifier()获取资源Id

本文介绍了在Android项目中如何利用getIdentifier()方法动态获取资源Id,特别是对于同一名称加序号的资源,如texture1, texture2等。提供了两种方法:方法一是传入包名+资源文件夹名/资源名称;方法二是传入资源名称、资源类型和包名。当未找到对应资源时,该方法返回0。示例代码展示了如何通过StringBuilder构建资源名称并获取Id。" 125876809,10812566,CAD框选技巧与删除重复线段教程,"['CAD画图', 'CAD基础', '图形编辑']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       项目中资源(图片,字符,id,style,attrs等)有时候只是同一个名字加序号的组合,如图片资源:texture1,texture2,texture2,……这时候可以使用sdk提供的方法getIdentifier()获取相应的id,有以下两种方式:


方法一:

getIdentifier(),第一个参数:包名:资源文件夹名/资源名称,第二和第三个参数为null
     int id= context.getResources().getIdentifier("com.example.mainpro:drawable/texture1",null,null)


方法二:

getIdentifier(),第一个参数:资源名称,第二个参数:资源类型,如drawable,第三个参数:包名

   int idgetResources().getIdentifier("texture1""drawable""com.example.mainpro");


以上两种方法,如果获取不成功返回0


获取texture1,texture2,texture2,……就可以使用StringBuilder

for(int i=0;i < n;i++)

{

    StringBuilder sb = new StringBuilder("com.example.mainpro:drawable/texture");

    sb.append(i);

    int id= context.getResources().getIdentifier(sb.toString(),null,null)

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值