黑马程序员技术交流社区

标题: layer-list 实现shape布局 [打印本页]

作者: 庭院深深深几许    时间: 2019-4-17 13:53
标题: layer-list 实现shape布局
  有些简单的图形完全可以用代码实现,减少了程序大小也提高了运行效率,layer-list实现布局和RelativeLayout相似,一层一层往上放,最后的item节点放置在最上面。
  新建layer-list和新建drawable资源中的shape一样,将标签select换成layer-list即可。
  一、实现同心圆
  外面一个环型里面一个圆形搞定。
  效果图:
  

[HTML] 纯文本查看 复制代码


   
        <shape
            android:innerRadius="30dp"
            android:shape="ring"
            android:thickness="2dp"
            android:useLevel="false">

            
        
    </shape


    <item
        android:bottom="30dp"
        android:left="30dp"
        android:right="30dp"
        android:top="30dp">
        
            
            <size
                android:width="30dp"
                android:height="30dp" />
        </size

   

</item

  也可以外面一个圆加个边框,里面一个小圆,外圆设置成透明颜色的话和上图是一样的效果。
  效果图:

[HTML] 纯文本查看 复制代码
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:dither="true"
            android:shape="oval">
            <solid android:color="@color/red" />
            <stroke
                android:color="@color/theme"
                android:width="1dp" />
        </shape>
    </item>

    <item
        android:bottom="20dp"
        android:left="20dp"
        android:right="20dp"
        android:top="20dp" >
        <shape
            android:shape="oval" >
            <solid android:color="@color/theme" />
            <size
                android:width="30dp"
                android:height="30dp" />

        </shape >
    </item >

</layer-list>

  调用资源文件直接
  xml:
  android:background="@drawable/name"
  selector:
  android:drawable="@drawable/name"
  加阴影效果等,可以用在RadioButton的选中和未选中状态,导航栏选中等也是同样的道理,自己多多体会吧。







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2