Android 使用level-list改变对应的状态图片

为了实现这种效果

其中的☀图片是根据状态变化的,
以前的做法:

if(条件1){    image.setBackground(R.id.xxx1);}else if(条件2){    image.setBackground(R.id.xxx2);}else if(条件3){    image.setBackground(R.id.xxx3);}

这种写法费时费力还不好维护,这里记下另一个实现方法:
在res/drawable下创建一个 mode_level.xml 文件,

<?xml version="1.0" encoding="utf-8"?><level-list xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@drawable/icon_heat" android:maxLevel="1"/>    <item android:drawable="@drawable/icon_cool" android:maxLevel="2"/>level-list>

布局layout_xxx.xml文件中这样写:

android:src="@drawable/mode_level"

使用的时候:

imageview.getDrawable().setLevel(1);

android会根据level的值自动选择对应的图片。

更多相关文章

  1. android图片上传
  2. Android(安卓)Drawable的那些事儿
  3. 【Android(安卓)界面效果6】Android(安卓)控件之ImageSwitcher图
  4. 直播软件源码Android(安卓)多个ImageView拖拽互换图片
  5. 如何实现手势缩放图片
  6. ImageView的android:adjustViewBounds属性
  7. Android的Btimap处理大图片解决方法
  8. Ant 打包 Android(安卓)Project
  9. Bluetooth in Android(安卓)4.2 and 4.3(三):Enable Bluetooth

随机推荐

  1. Android(安卓)九宫格图片展示的实现
  2. Android(安卓)Studio的Gradle错误解决方
  3. Android植物大战僵尸附源码
  4. Android的系统架构
  5. 基于Java LinkedList,实现Android大数据
  6. 通过userAgent判断是是否手机、微信、手
  7. 原生APP中js怎样与Android和ios进行交互
  8. android Bitmap
  9. eclipse导入android的app
  10. 获取Android设备唯一标识(唯一序列号)