Android图片堆叠效果实现
1.android中的layer-list。android中的layer-list就是用来多个图层堆叠显示的。
在drawable文件夹下创建一个xml文件。比如:background.xml
xmlns:android="http://schemas.android.com/apk/res/android">
?????android:drawable="@drawable/pic1">????
?????android:drawable="@drawable/pic2">
?
?
另外在layout文件中指定background属性这样就会加载pic1和pic2这两张图片。
例如:
<ImageView
????? ......
?????? android:background="@drawable/background"
/>
另外还可以使用代码实现:
Resources r = getResources();
Drawable[] layers = new Drawable[2];
layers[0] = r.getDrawable(R.drawable.pic1);
layers[1] = r.getDrawable(R.drawable.pic2);
LayerDrawable layerDrawable = new LayerDrawable(layers);
((ImageView) findViewById(R.id.imageview)).setImageDrawable(layerDrawable);
?
?
2.实现ImageView中两张图片重叠显示
第一种XML配置
使用layer-list标签
?
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/t" /> <item android:drawable="@drawable/tt" /></layer-list>
然后设置
image.setImageDrawable(getResources().getDrawable(R.layout.layer));
?
?
第二种代码生成
?
Resources r = getResources();Drawable[] layers = new Drawable[2];layers[0] = r.getDrawable(R.drawable.t);layers[1] = r.getDrawable(R.drawable.tt);LayerDrawable layerDrawable = new LayerDrawable(layers);testimage.setImageDrawable(layerDrawable);
?