在开发中总会须要自己定义各种View的样式,假设总是依赖美工作图弄出须要的UI样式图片(比方:一个button要选中和默认两张图片),不但时间上会浪费、往往也会有适配问题。

尽管能够通过.9图来解决一些适配问题。依旧要花不少时间,毕竟美工通常不懂.9图的制作(得自己动手)。所以有时能够通过简单的创建android XML的方式制作须要的View的UI样式(不但快捷,更不会有适配问题)。


下面XML代码创建了一个4dip圆角带2px边框的样式(start_use_btn_selector.xml)。

(带有点击、选中、默认三总状态)

<?xml version="1.0" encoding="utf-8"?

>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected = "true"><!--
选中状态 -->

        <shape android:shape="rectangle"><!--
图形形状 rectangle为矩形、oval为椭圆、line为线、ring为环形 -->

            <corners android:radius="4dip"/><!--
四周圆角,也能够单独设置某一个角为圆角 如:设置topLeftRadius -->

            <solid android:color="#33ffffff"/><!--
中心填充色 -->

            <stroke android:width="2.0px" android:color="#ffffffff"/><!--
边框线宽度和颜色设置 -->

        </shape>

    </item>

    <item android:state_pressed="true"><!--
点击状态 -->

        <shape android:shape="rectangle">

            <corners android:radius="4dip"/>

            <solid android:color="#33ffffff"/>

            <stroke android:width="2.0px" android:color="#ffffffff"/>

        </shape>

    </item>

    <item><!--
默认状态 -->

        <shape android:shape="rectangle">

            <corners android:radius="4dip"/>

            <solid android:color="#00ffffff"/>

            <stroke android:width="2.0px" android:color="#ffffffff"/>

        </shape>

    </item>



</selector>


在layout中使用
<Button

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:background="@drawable/start_use_btn_selector"

    android:includeFontPadding="false"

    android:paddingBottom="2dip"

    android:paddingLeft="28dip"

    android:paddingRight="28dip"

    android:paddingTop="2dip"

    android:text="立即体验"

    android:textColor="#FFFFFFFF"

    android:textSize="20sp" />

效果图(背景绿色是总体layout颜色)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluc2VuNjE4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">



通过android XML 创建图形,降低对美工的依赖的更多相关文章

  1. Android xml 绘制图形

    一般用shape定义的xml文件存放在drawable目录下,若项目没有该目录则新建一个,而不要将它放到drawable-hdpi等目录中. 使用shape可以自定义形状,可以定义下面四种类型的形状, ...

  2. Android:创建可穿戴应用 - 安装和依赖管理

    安装可穿戴应用 在开发时,你能够像一般移动应用一样直接把应用安装到可穿戴设备中. 使用adb install或者 Android Studio上的Play button. 当你准备好要公布时,你须要把 ...

  3. Drawable实战解析:Android XML shape 标签使用详解(apk瘦身,减少内存好帮手)

    Android XML shape 标签使用详解   一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景. ...

  4. Android XML shape 标签使用详解(apk瘦身,减少内存好帮手)

    Android XML shape 标签使用详解   一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景. ...

  5. Android 数据库管理— — —创建数据库

    <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...

  6. android XMl 解析神奇xstream 六: 把集合list 转化为 XML文档

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  7. android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  8. android 自己创建一个凝视模板

    android  自己创建一个凝视模板 作为一名程序猿 不仅要有一个写代码的能力,养成一个良好的编写习惯也是非常重要的. 今天给大家具体介绍一下怎样创建凝视模板,给每一个类和方法都自己手动去凝视信息也 ...

  9. Android Studio创建JAR/AAR库

    [时间:2017-09] [状态:Open] [关键词:Android,Android Studio,gradle,jar,aar,library] 0 引言 最近在工作中遇到了升级Android S ...

随机推荐

  1. redis-3.0.1 sentinel 主从高可用 详细配置

    最近项目上线部署,要求redis作高可用,由于redis cluster还不是特别成熟,就选择了redis sentinel做高可用.redis本身有replication,实现主从备份.结合sent ...

  2. Python 源码分析:queue 队列模块

    起步 queue 模块提供适用于多线程编程的先进先出(FIFO)数据结构.因为它是线程安全的,所以多个线程很轻松地使用同一个实例. 源码分析 先从初始化的函数来看: 从这初始化函数能得到哪些信息呢?首 ...

  3. CREATE VIEW - 定义一个视图

    SYNOPSIS CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query DESCRIPTION 描述 CREATE ...

  4. CAD参数绘制多行文字(com接口)

    在CAD设计时,需要绘制多行文字,用户可以设置设置绘制文字的高度等属性. 主要用到函数说明: _DMxDrawX::DrawMText 绘制一个多行文字.详细说明如下: 参数 说明 DOUBLE dP ...

  5. 梦想CAD控件,用于浏览和编辑DWG文件,在脱离AUTOCAD的情况下独立运行,相当于简易CAD

    (百度百科连接) 梦想绘图控件5.2  是国内最强,最专业的CAD开发组件(控件),不需要AutoCAD就能独立运行.控件使用VC 2010开发,最早从2007年第一个版本完成,经过多年的累积已经非常 ...

  6. No-7.运算符

    数学符号表链接:https://zh.wikipedia.org/wiki/数学符号表 01. 算数运算符 是完成基本的算术运算使用的符号,用来处理四则运算 运算符 描述 实例 + 加 10 + 20 ...

  7. XP禁用了U盘和移动硬盘方法

    会不会是你XP禁用了U盘和移动硬盘下面这些是任何禁用U盘的!你自己反着试下嘛!方法一,BIOS设置法(快刀斩乱麻法) 进入BIOS设置,选择“Integrated Peripherals”选项,展开后 ...

  8. asp.net中js和jquery调用ashx的不同方法分享,需要的朋友可以参考一下

    asp.net中js和jquery调用ashx的不同方法分享,需要的朋友可以参考一下     =============js================ 复制代码代码如下: var xhr = n ...

  9. python3+beautifulSoup4.6抓取某网站小说(一)爬虫初探

    本次学习重点: 1.使用urllib的request进行网页请求,获取当前url整版网页内容 2.对于多级抓取,先想好抓取思路,再动手 3.BeautifulSoup获取html网页中的指定内容 4. ...

  10. vue 全局组件的注册

    第一步 在main.js里面 引入需要注册的组件例如: //引入组件 import header from  './components/header.vue' import footer from ...