在做项目的过程中,遇到了一个需求,在Android代码里可以通过图片的ID动态加载图片。要加载Android文件夹里面的图片,我们就要知道它的ID,要动态获取,那么就得动态获取图片的ID。

那么应该怎么做呢?

Resources res=getResources();
String packageName =getPackageName();
imageView.setImageBitmap(BitmapFactory.decodeResource(res,res.getIdentifier(pracData.getQuestion(),"drawable",packageName)));

我们可以用

res.getIdentifier(String str,"drawable" ,packageName)这个方法来获取图片的ID。str为图片的名称,比如图片为a.png,那么str就为a。drawable为存放图片的文件夹。packageName为activity所在的包名。

接下来我们讲讲动态获取其他资源ID的方法

1、 获取布局资源ID

int layoutId = getResources().getIdentifier("activity_main", "layout", getPackageName());

2、获取图片资源(mipmap文件中)

int mipmapId = getResources().getIdentifier("ic_launcher", "mipmap", getPackageName());

3、获取字符资源

int stringId = getResources().getIdentifier("author", "string", getPackageName());

转载于:https://www.cnblogs.com/tangZH/p/7955324.html

动态的根据一个资源名获得到对应的资源id相关推荐

  1. 一道Python面试题,设置一个动态变量名

    Firstly 各位应该做过服务器运维吧,像这样: 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很多已经做案例的人,却不知道如何去 ...

  2. mysql 表的结果作为表_SQL--如何将Sql语句查询出来的结果作为一个表名 再次进行查询...

    最近在做一个能源监控的项目,因为用到从表里获取数据后得知数据存在哪一个表里后,再获取那个表的数据,所以就遇到了一个表名不固定的情况,一开始的方式,是我分两条sql语句来执行: 1.第一条sql 是通过 ...

  3. 过滤及提取电影资源名小算法(初级方案)

    这两天干了件自己觉得很有意思的事情-- 互联网上各个视频网站,对电影资源的命名千奇百怪,比如 <阿凡达>高清版在线观看.西游记新版中文字幕(暑期必看!).阿里巴巴与四十大盗拍摄花絮 -- ...

  4. Javaweb或javaEE完整项目名及包名、资源名命名规则

    代码编写规范目的:能够在编码过程中实现规范化,为以后的程序开发中养成良好的行为习惯. 代码编写规范使用范围:J2EE项目开发. 包命名规范: 目的:包的命名规范应当体现出项目资源良好的划分 servl ...

  5. 在网页中动态的生成一个gif图片

    作者: love.net 大家知道股票网站的K线图是动态生成的定时刷新PHP 就有动态生成图片的功能 那么怎样用asp.net在网页中动态的生成一个图片呢? 下面我要举的例子是动态的生成一个图片显示当 ...

  6. 如何删除一个CSDN上自己上传的资源

    如何删除一个CSDN上自己上传的资源 第一步,找到你想删除的资源,其URL举例为: http://download.csdn.net/detail/ssergsw/9733040 则删除的get请求为 ...

  7. 使用Python生成动态图表,一个很Cool的教程

    作者 | Viviane 译者 | 刘旭坤 编辑 | Jane 出品 | AI科技大本营 [导读]Matplotlib 和 Seaborn 用来做数据固定的静态图表很不错,但如果需要动态显示数据的变化 ...

  8. 高级指令——hostname指令【作用:操作服务器的主机名(读取、设置)】、id指令【查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…)】、whoami指令、ps -ef指令

    1.hostname指令 作用:操作服务器的主机名(读取.设置) 语法1:#hostname 含义:表示输出完整的主机名 语法2:#hostname  -f 含义:表示输出当前主机名中的FQDN(全限 ...

  9. matlab子函数调用变量,matlab中,怎么样用function自定义函数调用另一个函数名为输入?...

    点击查看matlab中,怎么样用function自定义函数调用另一个函数名为输入?具体信息 答:test定义两个参数,一个是函数,一个是函数的变量. function [z]=test11(funna ...

最新文章

  1. 青岛...沙尘暴!太可怕了~什么事儿都有!
  2. 深度丨三份研究报告,聚焦 AI 的三大主要话题
  3. CD管理和检索软件比较
  4. 使用VS2015远程GDB调试
  5. 网络设备监控-Catic添加H3C的监控图解
  6. adb shell读取返回值_shell学习笔记03(函数amp;shell工具amp;面试题)
  7. Android之实现RTL的ViewPager
  8. PAT 1048 数字加密
  9. STL学习系列一:STL(标准模板库)理论基础
  10. 大众点评被合并至美团? 官方回应:不存在这种可能性
  11. python selenium 点击加载更多_如何等待页面加载,然后按selenium中的“加载更多”按钮?...
  12. 基于 WebRTC 构建 Web SIP Phone
  13. 如何开启远程桌面的服务器,如何启用远程服务器 开启服务器的远程桌面控制...
  14. 微软MDT 安装与配置(二)
  15. 紧贴“十四五”规划 天威诚信强势助力政务信息化系统建设
  16. Mac入门(四)写给Mac新人
  17. Pvr_Controller
  18. 九度1088——剩下的树
  19. Sharestation 工作站GPU虚拟化,实现共享GPU办公
  20. 日拱一卒——LeetCode 51.N皇后

热门文章

  1. mycncart不同地区不同固定运费
  2. 【数据结构】回顾散列表
  3. sybase备份问题
  4. 2014年年度工作总结--IT狂人实录
  5. Postfix邮件设定相关
  6. acegi,IBM的Acegi Security System(1)
  7. Chatter 导入
  8. 限定项目的 Node.js 版本
  9. win8+ubuntu,ubuntu中打开NTFS文件
  10. 《PhoneGap精粹:构建跨平台的移动App》——1.10节PhoneGap资源