zoukankan      html  css  js  c++  java
  • android通过shape.xml制作渐变背景

    编写xml文件放到res/drawable-*/下面
    最基本的写法如下

    <?xml version="1.0" encoding="utf-8"?>    
    <shape xmlns:android="http://schemas.android.com/apk/res/android">    
        <gradient     
            android:startColor="#3A3C39"     
            android:endColor="#181818"    
            android:angle="270"    
         />    
        <corners android:radius="0dp" />    
    </shape>
    

      使用方法:android:background="@drawable/shape_background_grey"   

    <?xml version="1.0" encoding="utf-8"?> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
    android:startColor
    ="#3A3C39"
    android:endColor
    ="#181818"
    android:angle
    ="270"
    />
    <corners android:radius="0dp"/>
    </shape>

      使用方法:android:background="@drawable/shape_background_grey" 

    其中 android:angle="270"  代表方向, 270表示从上到下,180表示从右到左,默认从左 

    复杂一点的写法如下

    <shape xmlns:android="http://schemas.android.com/apk/res/android"  
    android:shape
    ="rectangle">
    <gradient android:type="radial" android:gradientRadius="250"
    android:startColor
    ="#E9E9E9" android:endColor="#D4D4D4"/>
    </shape>

    <shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:angle="0" android:startColor="#FFdaf3fc"
    android:centerColor
    ="#FFd4e9a9" android:endColor="#FFdaf3fc"/>
    </shape>

    <shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape
    ="rectangle">
    <gradient android:type="radial" android:gradientRadius="250"
    android:startColor
    ="#E9E9E9" android:endColor="#D4D4D4"/>
    </shape>

    <shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:angle="0" android:startColor="#FFdaf3fc"
    android:centerColor
    ="#FFd4e9a9" android:endColor="#FFdaf3fc"/>
    </shape>

      在这里要注意android:type="radial"类型的使用会有不同的效果 

    android:centerColor="#FFd4e9a9" 通常这个也不是被人常用 

    <?xml version="1.0" encoding="utf-8"?>   
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape
    ="rectangle">
    <gradient android:startColor="#509245" android:centerColor="#3e8532"
    android:endColor
    ="#509245" android:type="linear" android:angle="90"
    android:centerX
    ="0.5" android:centerY="0.5"/>
    <padding android:left="7dp" android:top="7dp" android:right="7dp"
    android:bottom
    ="7dp"/>
    <corners android:radius="4dp"/>
    </shape>

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape
    ="rectangle">
    <gradient android:startColor="#509245" android:centerColor="#3e8532"
    android:endColor
    ="#509245" android:type="linear" android:angle="90"
    android:centerX
    ="0.5" android:centerY="0.5"/>
    <padding android:left="7dp" android:top="7dp" android:right="7dp"
    android:bottom
    ="7dp"/>
    <corners android:radius="4dp"/>
    </shape>

      android:shape 配置的是图形的形式,主要包括方形、圆形等,上边代码为方形。

    gradient节点主要配置起点颜色、终点颜色、中间点的坐标、中间点的颜色、渐变角度(90度为上下渐变,0为左右渐变),padding节点主要配置上下左右边距,corners节点配置四周园角的半径。

  • 相关阅读:
    Linux的命令技巧
    MAC地址表、ARP缓存表以及路由表
    边缘触发(Edge Trigger)和条件触发(Level Trigger)
    vue-router跳转页面
    正则表达式(简单易懂篇)
    Markdown快速使用指南
    WEB前端资源集(二)
    WEB前端资源集(一)
    js判断移动端与pc端
    js原声快速实现选项卡
  • 原文地址:https://www.cnblogs.com/gzggyy/p/2123526.html
Copyright © 2011-2022 走看看