Android里同一个ImageView显示不同的图片的方法
2013-02-21 10:23
701 查看
有时候,我们为了在一个ImageView中显示不同的图片,往往会使用:
if (条件1)
{
image.setBackground(R.id.xxx1);
}
else if (条件2)
{
image.setBackground(R.id.xxx2);
}
else if ...
其实我们可以使用另一个简便的方法实现相同的功能
首先,在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>
Android相关内容:
JavaScript的indexOf()用法
C#的IndexOf用法
Android上传bitmap图片至Web的方法
Android实现重启和关机的工具类
五种控制Android应用的权限的方法
然后在layout中把image view的src设置成已创建好的xml文件
程序中变换图片时,只需要使用
imageview.getDrawable().setLevel(1);
或者imageview.setImageLevel(1);
...
Android会根据level的值自动选择对应的图片。手机显示剩余电量就是用这个方法来显示不同图片的
使用LevelDrawable注意几点:
1、默认的level为0,如果没有和0匹配的level,那么就不显示。
2、level匹配以maxLevel优先。即如果有个item,min:1,max:2。 另一份item,min:2,max:3。
如果此时设置level=2,那么会匹配第一个item。
if (条件1)
{
image.setBackground(R.id.xxx1);
}
else if (条件2)
{
image.setBackground(R.id.xxx2);
}
else if ...
其实我们可以使用另一个简便的方法实现相同的功能
首先,在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>
Android相关内容:
JavaScript的indexOf()用法
C#的IndexOf用法
Android上传bitmap图片至Web的方法
Android实现重启和关机的工具类
五种控制Android应用的权限的方法
然后在layout中把image view的src设置成已创建好的xml文件
程序中变换图片时,只需要使用
imageview.getDrawable().setLevel(1);
或者imageview.setImageLevel(1);
...
Android会根据level的值自动选择对应的图片。手机显示剩余电量就是用这个方法来显示不同图片的
使用LevelDrawable注意几点:
1、默认的level为0,如果没有和0匹配的level,那么就不显示。
2、level匹配以maxLevel优先。即如果有个item,min:1,max:2。 另一份item,min:2,max:3。
如果此时设置level=2,那么会匹配第一个item。
相关文章推荐
- android 同一个ImageView显示不同的图片--->level-list
- Android 同一个ImageView显示不同的图片(LevelDrawable)
- Android中同一个ImageView中根据状态显示不同图片
- Android中同一个ImageView中根据状态显示不同图片
- Android开发:同一ImageView显示不同图片
- Android自定义控件:imageview重写onMeasure方法实现图片按指定比例显示,拉伸永不变形,解决屏幕适配问题
- 在Android中如何获取视频的第一帧图片并显示在一个ImageView中
- 同一个ImageView显示不同的图片--->level-list
- 在Android中如何获取视频的第一帧图片并显示在一个ImageView中
- 同一个ImageView显示不同的图片--->level-list
- 同一个ImageView显示不同的图片(LevelDrawable)
- android 怎么把网络图片生成一个Bitmap显示在ImageView中
- Android之ImageView既能普通图片又能显示gif的方法
- 同一个ImageView显示不同的图片--->level-list
- 同一个ImageView显示不同的图片--->level-listnd
- 【Android 开发】:UI控件之显示图片控件 ImageView 的使用方法
- 同一个ImageView显示不同的图片--->level-list
- Android ImageView设置图片的可见性,设置颜色的不同方法,设置图片指定大小
- Android ImageView控件 按下与松开显示不同的背景图片
- 同一个ImageView中显示不同图片