感谢:http://blog.sina.com.cn/s/blog_6111ce890100psq9.html

有时候,我们为了在一个ImageView中显示不同的图片,平时往往会使用:

if (条件1)



  image.setBackground(R.id.xxx1); 

}

else if (条件2)



  image.setBackground(R.id.xxx2); 

} ...



可以用另一个简便的方法实现相同的功能(安卓电池图标的显示就是这样使用):





首先,在res/drawable下建立一个xml文件,内容如下 

<level-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:maxLevel="0" android:drawable="@drawable/battery_0" />

    <item android:maxLevel="1" android:drawable="@drawable/battery_1" />

    <item android:maxLevel="2" android:drawable="@drawable/battery_2" />

    <item android:maxLevel="3" android:drawable="@drawable/battery_3" />

    <item android:maxLevel="4" android:drawable="@drawable/battery_4" />

</level-list>







然后在layout中把image view的src设置成已创建好的xml文件 

程序中变换图片时,只需要使用 

imageview.getDrawable().setImageLevel(1);

... 

Android会根据level的值自动选择对应的图片。手机显示剩余电量就是用这个方法来显示不同图片的。

同一个ImageView根据xml文件来显示不同的图片--level-list的更多相关文章

  1. AndroidStudio下使用 RecyclerView xml文件不显示预览条目并报错类似:NoClassDefFoundError 问题解决

    在项目中使用RecyclerView是很普遍的,最近工作中遇到了这种情况: RecyclerView可以正常使用 不会报错 但是在layout中的xml文件中不显示并且报错,如下图:(报的错忘了截了, ...

  2. 使用多个项目生成Xml文件来显示帮助文档

    终于到这了,我们首先将Product单独作为一个项目 WebAPI2PostMan.WebModel 并引用他,查看文档如下. 你会发现,你的注释也就是属性的描述没有了.打开App_Data/XmlD ...

  3. CCLablettf读取显示xml文件内容显示中文

    CCDictionary *strings = CCDictionary::createWithContentsOfFile("tips2.xml"); const char *h ...

  4. WebAPI使用多个xml文件生成帮助文档

    一.前言 上篇有提到在WebAPI项目内,通过在Nuget里安装(Microsoft.AspNet.WebApi.HelpPage)可以根据注释生成帮助文档,查看代码实现会发现是基于解析项目生成的xm ...

  5. WebAPI使用多个xml文件生成帮助文档(转)

    http://www.cnblogs.com/idoudou/p/xmldocumentation-for-web-api-include-documentation-from-beyond-the- ...

  6. android xml文件

    一.布局文件:在layout目录下,使用比较广泛: 我们可以为应用定义两套或多套布局,例如:可以新建目录layout_land(代表手机横屏布局),layout_port(代表手机竖屏布局),系统会根 ...

  7. 【转】WebAPI使用多个xml文件生成帮助文档

    来自:http://www.it165.net/pro/html/201505/42504.html 一.前言 上篇有提到在WebAPI项目内,通过在Nuget里安装(Microsoft.AspNet ...

  8. IDEA中 mybatis-config、applicationContext.xml、log4j.properties、SpringMVC等文件没有图标标识符号,不是一个xml文件

    1. 举例说明 mybatis-config.xml文件不显示图标,识别不出该xml文件 2. 解决办法 1)先点击 File -> Settings-,然后贴入下面代码 (2) 具体操作如下图 ...

  9. ImageView设置边框 以及内部图片居中显示 在AndroidStudio中添加shape.xml文件

    效果如图 边框设置:shape文件 <shape xmlns:android="http://schemas.android.com/apk/res/android"> ...

随机推荐

  1. mybatis使用时遇到的一些问题------模糊查询、处理大于号小于号、相关函数替换空值

    在mybatis中可能会用到的方法 1.模糊查询 <select id="showByIdName" parameterType="User" resul ...

  2. WebSocket原理说明

    WebSocket原理说明 众所周知,Web应用的通信过程通常是客户端通过浏览器发出一个请求,服务器端接收请求后进行处理并返回结果给客户端,客户端浏览器将信息呈现.这种机制对于信息变化不是特别频繁的应 ...

  3. R语言编程艺术(5)R语言编程进阶

    本文对应<R语言编程艺术> 第14章:性能提升:速度和内存: 第15章:R与其他语言的接口: 第16章:R语言并行计算 ================================== ...

  4. django 项目运行时static静态文件不能加载问题处理

    一.首先检查网页中的加载路径是否正确,如果和文件所在路径不一致,就把html改下路径 二.加载路径和文件实际路径一致,看下配置文件: STATIC_URL = '/static/'STATIC_ROO ...

  5. 一个关于react-native的demo,详细请转GitHub

    react native 0 介绍 支持ios和android两个平台 下载:git clone https://github.com/chunlei36/react-native-full-exam ...

  6. 配置dcom时,在此计算机运行应用程序不可选

    Finally.... After installing windows 7 - 32 bit and seeing that DcomCnfg worked led me to believe th ...

  7. 详解django三种文件下载方式

    推荐使用FileResponse,从源码中可以看出FileResponse是StreamingHttpResponse的子类,内部使用迭代器进行数据流传输. 在实际的项目中很多时候需要用到下载功能,如 ...

  8. Java 操纵XML之读取XML文件

    Java 操纵XML之读取XML文件 一.JAVA DOM PARSER DOM interfaces The DOM defines several Java interfaces. Here ar ...

  9. 二叉查找树(二叉排序树)的详细实现,以及随机平衡二叉查找树Treap的分析与应用

    这是一篇两年前写的东西,自我感觉还是相当不错的Treap教程.正好期末信息科学技术概论课要求交一个论文,就把这个东西修改了一下交了,顺便也发到这里吧. 随机平衡二叉查找树Treap的分析与应用 1.序 ...

  10. 关于输出螺旋矩阵的demo

    输出类似 1 2 3 8 9 4 7 6 5 主要难点是如何找到表示的算法 我的理解是,先生成一个n*n的矩阵,然后再往里面塞数字,而塞的方法分别有四种:由左往右,由上往下,由右往左,由下往上,没塞完 ...