用shape画内圆外方,形成一个圆形头像

来源:互联网 发布:淘宝确认收货 花呗 编辑:程序博客网 时间:2024/06/15 18:06

很多人都有过这样的经历,想要在自己写的程序里,上传一张随便大小形状的照片在程序里显示都是圆形照片,或者是方形,或者是三角形,但是写代码又非常麻烦,这里就有一个也可以实现一样效果的方法,那就是用

layer-list画。

1:新建一个工程,在drawable文件夹下创建一个xml文件,如图:



2:代码如下,里面有解释

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android">    <!-- 图层1(oval) -->    <!-- left,top,right,bottom定义为-10,是为了扩大oval,达到覆盖四角的效果 -->    <item android:left="-10dp" android:top="-10dp" android:right="-10dp" android:bottom="-10dp">        <shape            android:shape="oval">            <!-- oval_inner[内部] -->            <stroke                android:width="10dp"                android:color="#ffffff" />            <!-- oval_inner_size[大小(除去边线)] ,也是最终裸露出来的圆形图像区域-->            <size                android:height="50dp"                android:width="50dp" />            <!-- 使oval_inner透明,裸露出将来设置的背景图片 -->            <gradient android:centerColor="#0000" />        </shape>    </item></layer-list>

3:使用方法:

<ImageView    android:layout_width="400px"    android:layout_height="400px"    android:src="@drawable/layer1"    android:background="@drawable/img1"/>

原创粉丝点击