`
zxl_ong
  • 浏览: 128525 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

用shape美化控件

阅读更多
    如果你对Android系统自带的UI控件感觉不够满意,可以尝试下自定义控件,我们就以Button为例,很早以前Android123就写到过Android Button按钮控件美化方法里面提到了xml的selector构造。当然除了使用drawable这样的图片外今天Android开发网谈下自定义图形shape的方法,对于Button控件Android上支持以下几种属性shape、gradient、stroke、corners等。

      我们就以目前系统的Button的selector为例说下:

            
 <shape>
                <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>

        对于上面,这条shape的定义,分别为渐变,在gradient中startColor属性为开始的颜色,endColor为渐变结束的颜色,下面的 angle是角度。接下来是stroke可以理解为边缘,corners为拐角这里radius属性为半径,最后是相对位置属性padding。

    对于一个Button完整的定义可以为

    
 <?xml version="1.0" encoding="utf-8"?>
    <selector
        xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true" >
            <shape>
                <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>
        </item>

        <item android:state_focused="true" >
            <shape>
                <gradient
                    android:startColor="#ffc2b7"
                    android:endColor="#ffc2b7"
                    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>
        </item>

        <item>      
            <shape>
                <gradient
                    android:startColor="#ff9d77"
                    android:endColor="#ff9d77"
                    android:angle="270" />
                <stroke
                    android:width="2dp"
                    android:color="#fad3cf" />
                <corners
                    android:radius="2dp" />
                <padding
                    android:left="10dp"
                    android:top="10dp"
                    android:right="10dp"
                    android:bottom="10dp" />
            </shape>
        </item>
    </selector>


    注意Android123提示大家,以上几个item的区别主要是体现在state_pressed按下或state_focused获得焦点时,当当来判断显示什么类型,而没有state_xxx属性的item可以看作是常规状态下。
分享到:
评论

相关推荐

    Android控件美化之Shape的使用

    ### Android控件美化之Shape的使用 在Android开发过程中,为了提升用户体验,界面美观是非常重要的一个环节。在美化界面的过程中,`Shape`是一种非常实用且灵活的工具,它可以帮助开发者轻松实现各种各样的视觉效果...

    Android Shape控件美化实现代码

    本文将深入探讨如何使用Shape控件来美化Android应用。 首先,Shape控件是Android中的一个Drawable类型,它可以通过`&lt;shape&gt;`标签在XML中定义。Shape支持多种形状,如矩形、椭圆、线和路径,但最常见的用法是创建...

    Android控件美化之Shape的使用[汇编].pdf

    在Android开发中,我们经常需要对UI控件进行自定义美化,以提升应用的视觉效果和用户体验。Shape是Android中一个非常实用的元素,它允许开发者定义自定义的图形样式,包括填充颜色、渐变、描边、圆角以及内部间距等...

    Android中shape的使用

    Android 中 shape 的使用 Android 中的 shape 是一种定义控件显示属性的方式,通过使用 shape 可以实现控件的背景、边框、圆角、渐变...在实际开发中,我们可以根据需要来定义不同的 shape,实现控件的个性化和美化。

    Android ListView边框圆角美化

    在Android开发中,ListView是常用的一种控件,用于展示大量数据列表。为了提升用户体验和界面设计的美观性,我们常常需要对ListView进行定制化,包括设置边框和实现圆角效果。本文将深入探讨如何在Android中实现...

    登录及注册界面界面并用selector和shape进行美化

    本教程将详细讲解如何创建登录和注册界面,并使用`selector`和`shape`来提升其视觉效果,以及如何通过集成`Carview`组件展示一个宝宝相册。 首先,我们要理解`selector`在Android中的作用。`selector`是一种状态...

    Android控件系列之Shape使用方法

    在本文中,我们将深入探讨如何使用`Shape`及其相关的属性来美化Android应用中的控件。 首先,`Shape`是Android图形绘制中的一种基本元素,通常在`res/drawable`目录下的XML文件中定义。一个`Shape`元素可以包含以下...

    35个Axure控件

    每个控件都有其特定的属性、样式和交互设置,熟练掌握这些控件的使用,能极大地提升原型设计的效率和质量。在实际操作中,设计师还会结合使用Axure的动态面板、条件逻辑、数据绑定等功能,使原型更加生动和真实。

    Delphi_spcomm_tshape_buttom三个控件.

    `tshape`通常用于美化界面,分隔不同区域,或者作为其他控件的背景。 3. **button(Button Control)** `button`是最常见的用户交互控件,它代表一个可点击的按钮。`Caption`属性设置按钮上显示的文字,`OnClick`...

    Android开发教程之shape和selector的结合使用

    可以这样说,shape和selector在美化控件中的作用是至关重要的。 1.Shape 简介 作用:XML中定义的几何形状 位置:res/drawable/文件的名称.xml 使用的方法: Java代码中:R.drawable.文件的名称 XML中:android:...

    Android UI设计 按钮美化

    其实,美化按钮并不是什么难事儿,简单地说,shape 就是用来自己画图用的。 shape 中有很多属性可以用来美化按钮,例如 gradient 可以让按钮有一个渐变效果,startColor 是开始的颜色,endColor 是最后的颜色,...

    Android Studio自动提取控件Style样式教程

    在 Android 中,我们可以使用 style 来美化控件。例如,我们可以在 styles.xml 中添加以下代码: ```xml &lt;item name="android:layout_width"&gt;wrap_content &lt;item name="android:layout_height"&gt;wrap_content ...

    实例详解Android Selector和Shape的用法

    可以这样说,shape和selector在美化控件中的作用是至关重要的。 1:Selector drawable的item中可以有以下属性: android:drawable=”@[package:]drawable/drawable_resource” android:state_pressed=[“true” |...

    安卓高级xml输入框EditText及其登陆界面布局shape使用

    本篇文章将深入探讨如何构建一个时尚、简洁且具有动态功能的EditText,以及如何在登录界面中利用shape来美化布局。 首先,我们要了解EditText的基本属性。例如,`android:hint`用于设置提示文本,`android:input...

    andorid 美化 扁平按钮美化

    综上所述,Android中实现扁平按钮美化涉及到自定义背景、使用Material Design库、状态切换效果、动画效果以及字体和图标的调整。通过这些方法,开发者可以创建出符合扁平化设计原则,且具有优秀用户体验的Android...

    Android shape和selector 结合使用实例代码

    Shape和Selector是两个非常重要的元素,它们可以帮助开发者自定义和美化各种控件,如按钮、文本框等。本文将深入讲解这两个概念,并通过实例代码展示如何结合使用。 首先,我们来看Shape。Shape是Android XML资源...

    Shape_src.rar_单文档 多视图_漂亮的界面

    描述中提到,该源代码可以实现通过菜单来改变窗口的形状,这意味着开发者可能使用了自定义控件或者窗体重绘技术来实现这一效果。在VC中,这可能涉及到WM_PAINT消息的处理,以及对CDC(Device Context)类的使用,以...

    网页打印控件

    它通过高度抽象化的功能函数,使开发者能够用少量的代码实现复杂的打印需求,从而减少了对打印知识的依赖,提高了开发效率。 #### 系统文件 Lodop的发布包由三个主要的系统文件组成: - **install_lodop.exe**:...

    漂亮的自做窗体

    在这个场景中,制作者使用了基础的图形处理类控件,如Shape、Picture和Label,来构建一个视觉上吸引人的窗体。在Windows应用程序开发中,这些控件是非常基本但重要的元素。 Shape控件允许开发者在窗体上绘制不同...

Global site tag (gtag.js) - Google Analytics