一个Drawable资源是绘图中的一个普通概念,可以再屏幕上绘制出来。可以通过APIs中的getDrawable(int)方法检索出来,也可以在其他的XML资源中通过android:drawable和android:icon等属性使用它。Android中有多种不同类型的drawable。
Bitmap File:一个位图文件(.png,.jpg,或.gif), 生成一个BitmapDrawable对象.
Nine-Patch File:就是一张可以基于自动适应内容大小而伸缩区域的png图片(.9.png), 生成一个NinePatchDrawable对象
Layer List:这个Drawable用来管理一个其它多个drawable的数组.既然是一个数组,所以就不难理解索引值最大的元素将画在最高部.
生成一个 LayerDrawable对象.
State List:这是一个xml文件用于不同的状态来引用不同的位图图形(比如,当一个Button控件按下状态要显示不同的图像).生成一个StateListDrawable对象.
Level List:一个xml文件,定义了一个drawable可用于管理几个可以替换的drawable.每一个都会分配一个最大的数值.生成一个LevelListDrawable.
Transition Drawable:一个xml文件,定义了一个drawable可用于两张图片形成一个渐变的过渡效果生成一个TransitionDrawable对象
Inset Drawable:一个xml文件,定义了一个drawable,跟据指定的距离插入到另一个drawable.当一个View<视图>对象需要一张比其实际边框要小的背景图时,就可以用到这个了.
Clip Drawable:一个xml文件,定义了一个drawable,
根据当前对准值作相应的拉伸处理,生成 ClipDrawable对象.
Scale Drawable:一个xml文件,定义了一个drawable,
根据当前对准值作相应的平铺处理,生成 ScaleDrawable对象.
Shape Drawable:就是通过一个xml文件来定义一个包含颜色和渐变的几何图形, 生成一个 ShapeDrawable对象
AnimationDrawable:还可以创建一个AnimationDrawable对像.
Color Drawable:在xml中一个color resource<颜色资源>也可以作为一个drawable. 例如,创建一个state list drawable时,可以为android:drawable属性引用一个颜色资源(android:drawable="@color/green")
1、创建imageview对象2、设置imageview的图片
3、添加到布局中
示例代码
12345
ViewGroup group = (ViewGroup) findViewById(R.id.viewGroup)//获取原来的布局容器ImageView imageView = new ImageView(this) //创建imageviewimageView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT)) //image的布局方式imageView.setImageResource(R.drawable.ic_launcher) //设置imageview呈现的图片group.addView(imageView) //添加到布局容器中,显示图片。
这写的啥?private int index = 0// 获取下表
private ArrayList<Drawable>bms = new ArrayList<Drawable>()
private void getBitmapDate(ArrayList<Drawable>bms) {// 将图片数据插入数组,在oncreat中初始化
bms.add(getResources().getDrawable(R.drawable.icon))
bms.add(getResources().getDrawable(R.drawable.icon))
bms.add(getResources().getDrawable(R.drawable.icon))
bms.add(getResources().getDrawable(R.drawable.icon))
}
onclick里面的代码:
switch (v.getId()) {
case R.id.imageView1:
if (index >= bms.size())
index = 0
else
index++
ivUpShort.setImageDrawable(bms.get(index))
break
default:
break
}
在xml中设置imageview的src,路径要是正确的,不然找不到文件就不会显示,AndroidStudio使用的是mipmap路径
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)