有时候,我们为了在一个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的值自动选择对应的图片。手机显示剩余电量就是用这个方法来显示不同图片的。

更多相关文章

  1. android 4.0 "移动网络" 选项 不存在
  2. Android(安卓)ApiDemos示例解析
  3. Android(安卓)RecyclerView 的点击事件
  4. Android的TextView与Html相结合的用法
  5. 关于Android(安卓)Settings中的八个问题
  6. Android(安卓)Studio(AS)-->导入项目
  7. Android中保存图片到本地并更新到相册及图片出现在相册时间不正
  8. TextView文字横向自动滚动(跑马灯)
  9. Android(安卓)GIF图片显示

随机推荐

  1. Android 的res/values/colors自定义颜色
  2. Android实现页面悬浮显示
  3. Android中的style和theme的用法
  4. ArcGIS for Android安装配置详解
  5. Android(安卓)TextView边框和背景,以及圆
  6. Android(安卓)源码编译 文件系统制作
  7. Android(安卓)webview加载富文本 屏幕简
  8. ubuntu下使用nginx和nginx-rtmp-module配
  9. android:giavity和layout_gravity的区别
  10. Android消息机制2-Handler(Native层)