android LayerDrawable 及layer-list

看QQ布局在drawable下建立一个xml文件

<?xml version="1.0" encoding="UTF-8"?>  
 <layer-list  
   xmlns:android="http://schemas.android.com/apk/res/android"> 
    <!--图片1-->
     <item android:id="@+id/user_faceback_drawable"
           android:drawable="@drawable/faceback" />  
    <!--图片2-->
     <item android:id="@+id/user_face_drawable" 
           android:drawable="@drawable/h001"   
           android:left="10.0dip" 
           android:top="18.0dip" 
           android:right="25.0dip" 
           android:bottom="35.0dip" />  
 </layer-list> 
<!--2个图片的叠加-->




效果图

           +                    =           

  user_faceback_drawble     h001


二、在代码中使用


public void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 setContentView(R.layout.activity_main); 


Drawable[] drawables=new Drawable[2]; 
drawables[0]=getResources().getDrawable(R.drawable.faceback);
drawables[1]=getResources().getDrawable(R.drawable.h001); 

LayerDrawable layer=new LayerDrawable(drawables); 
layer.setLayerInset(0, 0, 0, 0, 0); //设置第一张图片上左下右间距
layer.setLayerInset(1, 10, 18, 25, 35);  //设置第二张图片上左下右间距,单位都是px

ImageView imageView=(ImageView)findViewById(R.id.imgView); 
imageView.setImageDrawable(layer); 
} 



效果和上面布局的一样,不过在代码中创建的,尺寸大小要比在布局文件中创建的小

那是因为layer.setLayerInset(1, 10, 18, 25, 35);设置图片间距时用的是px,而在xml布局

文件中用的是dp


转自:http://hi.baidu.com/jwq359699768/item/f4b4de02c0d7948e02ce1b00


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值