zoukankan      html  css  js  c++  java
  • android shape和selector

    1.shape 用法示例:

     <shape>
                <!-- 实心 -->
                <solid android:color="#ff9d77"/>
                <!-- 渐变 -->
                <gradient
                    android:startColor="#ff8c00"
                    android:endColor="#FFFFFF"
                    android:angle="270" />
                <!-- 描边 -->
                <stroke
                    android:width="2dp"
                    android:color="#dcdcdc" />
                <!-- 圆角 -->
                <corners
                    android:radius="2dp" />
                <padding
                    android:left="10dp"
                    android:top="10dp"
                    android:right="10dp"
                    android:bottom="10dp" />
            </shape>
    • solid:实心,就是填充的意思
    • gradient:渐变

    android:startColor和android:endColor分别为起始和结束颜色,android:angle是渐变角度,必须为45的整数倍。
    另外渐变默认的模式为android:type="linear",即线性渐变,可以指定渐变为径向渐变,android:type="radial",径向渐变需要指定半径android:gradientRadius="50"。

    • stroke:描边

    android:width="2dp" 描边的宽度,android:color 描边的颜色。
    我们还可以把描边弄成虚线的形式,设置方式为:
    android:dashWidth="5dp" 
    android:dashGap="3dp"
    其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离。

    • corners:圆角

    android:radius为角的弧度,值越大角越圆。

    2.selector 用法示例:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_checked="true" 
              android:drawable="@drawable/enabled_on_pressed" />
        <item  android:state_pressed="true"
              android:drawable="@drawable/enabled_on_pressed" />
        <item 
              android:drawable="@drawable/disabled_off" />              
    </selector>

    drawable的item中可以有以下属性: 
    android:drawable="@[package:]drawable/drawable_resource"
    android:state_pressed=["true" | "false"]
    android:state_focused=["true" | "false"]
    android:state_selected=["true" | "false"]
    android:state_active=["true" | "false"]
    android:state_checkable=["true" | "false"] 
    android:state_checked=["true" | "false"] 
    android:state_enabled=["true" | "false"] 
    android:state_window_focused=["true" | "false"] 

    Item顺序是有讲究的,条件限定越细致,则应该放到前面。

  • 相关阅读:
    在 ML2 中 enable local network
    实践 Neutron 前的两个准备工作
    配置 linux-bridge mechanism driver
    为 Neutron 准备物理基础设施(II)
    两张图总结 Neutron 架构
    Service Plugin / Agent
    详解 ML2 Core Plugin(I)
    #define用法集锦[修正版]
    socketpair理解
    判断单链表是否存在环,判断两个链表是否相交-的相关讨论
  • 原文地址:https://www.cnblogs.com/rural/p/4157941.html
Copyright © 2011-2022 走看看