LayerDrawable
来源:互联网 发布:ospf链路状态数据库 编辑:程序博客网 时间:2024/05/16 12:31
1.在Android项目开发的时候,经常看到很漂亮的UI界面,比如,当你点击一张图片被选中的时候,覆上一张透明的图片。表示被选中,区别与那些没有被选中的。这种是如何实现的呢?答案是LayerDrawable的使用出现的效果。下面是LayerDrawable的总结,若有不正确的地方,请大家指正。
2.简单的来说,LayerDrawable继承与Drawable,Drawable就是一个可画的对象,可能是一张位图BitmapDrawable,也可能是一个图形ShapeDrawable,还有可能是一个图层LayerDrawable。根据不同的画图需求创建相应的可画对象。
2.简单的来说,LayerDrawable继承与Drawable,Drawable就是一个可画的对象,可能是一张位图BitmapDrawable,也可能是一个图形ShapeDrawable,还有可能是一个图层LayerDrawable。根据不同的画图需求创建相应的可画对象。
LayerDrawable系统将会按这些Drawable对象的数组顺序来绘制它们,索引最大的Drawable对象将会被绘制在最上面,定义LayerDrawable对象的XML文件的根元素layer-list ,该元素可以包含多个item元素。
3.代码实现如下:
方法一:XML方式:
<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <bitmap android:src="@mipmap/ic_launcher" android:gravity="center" /> </item> <item android:top="10dp" android:left="10dp"> <bitmap android:src="@mipmap/ic_launcher" android:gravity="center" /> </item> <item android:top="20dp" android:left="20dp"> <bitmap android:src="@mipmap/ic_launcher" android:gravity="center" /> </item></layer-list>方法二:代码方式:
public class MainActivity extends Activity { private ImageView mView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mView = (ImageView) findViewById(R.id.imageView1); // 创建资源对象 Resources resources = getResources(); // 创建数组对象 Drawable[] layers = new Drawable[2]; layers[0] = resources.getDrawable(R.drawable.ic_01); layers[1] = resources.getDrawable(R.drawable.ic_02); LayerDrawable layerDrawable = new LayerDrawable(layers); // 设置背景 mView.setImageDrawable(layerDrawable); }}
0 0
- LayerDrawable
- LayerDrawable
- LayerDrawable
- LayerDrawable
- android LayerDrawable
- Android LayerDrawable
- Android LayerDrawable
- Android使用LayerDrawable资源
- Drawable资源---LayerDrawable资源
- Android-drawable资源-LayerDrawable
- 动态添加Layerdrawable
- 6.3 Android Framework - LayerDrawable
- Android Drawable之LayerDrawable
- android layerdrawable的用法
- android LayerDrawable转Drawable
- LayerDrawable的使用
- Android Drawable之LayerDrawable
- Drawable学习之----LayerDrawable
- Usb Audio Device Descriptor(4) Output Terminal Descriptor
- mac命令
- Oracle Database SQL Language Reference 笔记(1)—— Oracle SQL 简介
- Git 分支 - 远程分支
- redis和ehcache比较
- LayerDrawable
- Hibernate:核心开发接口介绍
- Usb Audio Device Descriptor(5) Feature Unit Descriptor
- iOS数字时间与时间的相互转换
- E5 2670 V1 C1 C2版本区别
- 神仙趋势,运筹帷幄,通达信公式
- 学习 Lisp 语言的相关书籍
- ios uitextfield uialertview keyboard奇怪的问题
- NodeJs session中间件 及应用(简单的登录与登出)