zoukankan      html  css  js  c++  java
  • Android开发Hack1-圆角镂空按钮的样式定义

    准备写一个关于Android开发小Hack 系列文章,希望能帮到一些开发者同学。

    第一篇:Android开发Hack1-圆角镂空按钮的样式定义

    通过xml文件实现自定义圆角镂空按钮,以及点击效果

    [html] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. <Button android:layout_width="78dp" android:layout_height="32dp"  
    2.           android:id="@+id/corner_btn"  
    3.           android:textSize="15sp"   
    4.           android:textColor="@color/score_point"  
    5.           android:text="button1"  
    6.           android:layout_marginRight="17dp"  
    7.           android:layout_marginLeft="17dp"  
    8.           android:layout_gravity="center_vertical"  
    9.           android:background="@drawable/circle_corner_button_selector"  
    10.           />  



    在drawable中创建按钮背景selector器

    circle_corner_button_selector.xml

    [html] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2.   
    3. <selector xmlns:android="http://schemas.android.com/apk/res/android">  
    4.     <item android:drawable="@drawable/circle_corner_button_pressed" android:state_pressed="true"/>  
    5.     <item android:drawable="@drawable/circle_corner_button"/>  
    6. </selector>  


     

    分别定义不同选择操作下的效果

    首先:circle_corner_button.xml文件

    [html] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2.   
    3. <!-- 带圆角 白色背景 黄色色边框  长方体 -->  
    4. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">  
    5.     <item>  
    6.         <shape>  
    7.             <solid android:color="#FFFFFF" />  
    8.             <corners android:topLeftRadius="5dp" android:topRightRadius="5dp"  
    9.                      android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp" />  
    10.             <stroke android:width="1dp" android:color="#F58939" />  
    11.             <padding  
    12.                     android:left="5dp"  
    13.                     android:top="5dp"  
    14.                     android:right="5dp"  
    15.                     android:bottom="5dp"  
    16.                     />  
    17.         </shape>  
    18.     </item>  
    19. </layer-list>  


     

    和circle_corner_button_pressed.xml文件

    [html] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <!-- 带圆角 白色背景 灰色边框 长方体 -->  
    3. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">  
    4.     <item>  
    5.         <shape>  
    6.             <solid android:color="#FFFFFF"/>  
    7.             <corners android:topLeftRadius="5dp" android:topRightRadius="5dp"  
    8.                      android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp"/>  
    9.             <stroke android:width="1dp" android:color="#dbdbdb"/>  
    10.             <padding  
    11.                     android:left="5dp"  
    12.                     android:top="5dp"  
    13.                     android:right="5dp"  
    14.                     android:bottom="5dp"  
    15.                     />  
    16.         </shape>  
    17.     </item>  
    18.   
    19. </layer-list>  


    最后的按钮效果应该是这样的:

    正常情况下:

     

    点击后的样式:

  • 相关阅读:
    细菌觅食算法-python实现
    蝙蝠算法-python实现
    人工免疫算法-python实现
    人工鱼群算法-python实现
    人工蜂群算法-python实现
    粒子群优化算法-python实现
    查看所有定时任务
    记一次反挖矿病毒。。。
    ubantu20.04安装Amber20 && AmberTools20
    centos8.2装teamviewer,启动时无法显示GUI,无法登录,但是不报错的解决办法。
  • 原文地址:https://www.cnblogs.com/earl-yongchang/p/4929396.html
Copyright © 2011-2022 走看看