zoukankan      html  css  js  c++  java
  • layer-list实现只有左、右和下边框的圆角矩形

    项目中需要实现如下效果的布局

    也就是一个左右下角带圆角,上方不带圆角的白色背景矩形,而且只有左、右和下边框,颜色为浅灰色。

    当然,切一个.9图片作为背景也能实现,但是能用代码实现的还是尽量用代码实现,因为图片过多一个消耗内存,另一个还增加apk大小。

    这种效果可以通过layer-lsit来实现,在drawable文件夹下面建一个xml文件,具体代码如下:

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">   
     3     <!-- 
     4         layer-list中的item是按照顺序从下往上叠加的,即先定义的item在下面,后面的依次往上面叠放
     5     -->  
     6     <!-- 这里定义一个下面带圆角,上面不带圆角的矩形,边框颜色为@color/line_color -->
     7     <item>   
     8          <shape>   
     9                <corners android:bottomLeftRadius="5dp" 
    10                    android:bottomRightRadius="5dp" />
    11                <stroke android:width="1px" android:color="@color/line_color" />
    12          </shape>       
    13     </item>  
    14     <!-- 
    15         这里定义一个下面带圆角,上面不带圆角的矩形,背景为白色
    16         这里设置了android:right="1px" android:left="1px" android:bottom="1px"属性
    17         android:right="1px"表示该item右边往里面缩了1px
    18         android:left="1px"表示该item左边往里面缩了1px
    19         android:bottom="1px"表示该item下面往里面缩了1px
    20         这样,左、右、下都比原来缩小了1px,这缩小出来的郑刚是上面一个item的边框的左、右、下边框
    21         而top没有缩小,所以覆盖了上面一个item的边框的上边框。
    22         所以这个item叠加上面一个item之后的效果就是一个只含左、右、下灰色边框,下面带圆角,上面不带圆角的白色背景矩形
    23      -->
    24     <item android:right="1px" android:left="1px" android:bottom="1px">   
    25          <shape>   
    26                <corners android:bottomLeftRadius="5dp" 
    27                    android:bottomRightRadius="5dp" />
    28                <solid android:color="@color/white" />
    29          </shape>       
    30     </item>  
    31 </layer-list>

    layer-lsit的用法注释中也讲的比较详细。

    然后在View中设置背景为改drawable即可。

  • 相关阅读:
    工具.MySQL
    SqlServer.日期时间格式化输出(资料)
    SqlServer2012.安装
    SQL.【转】获取存储过程返回值的几种方式
    SQL.【转】SqlServer如何获取存储过程的返回值
    SQL.@,@@、#,##
    Oracle10g.CentOS6安装_遇到的问题(02)
    jQuery FileUpload 插件[转]
    EF6+Oracle12c+DBFirst+VS2015:EF6.0添加实体模型闪退问题解决
    IIS
  • 原文地址:https://www.cnblogs.com/liuling/p/2015-9-23-1.html
Copyright © 2011-2022 走看看