Android初级教程:shape的基本用法

转载本文请注明出处:http://blog.csdn.net/qq_32059827/article/details/52203347   点击打开链接

在自定义进度条之前,先来学习一下shape的用法。

一、在res目录下边新建一个drawble目录(如果您会自定义状态选择器的话,这将很简单)

二、新建一个android.xml文件,找到shape,点击finish

我们可以看到shape属性并不多,截图如下:

现在逐步介绍常用的属性用法:

1、<corners />表示  “角”,表示圆角

(1)、radius : 表示半径android:radius="5dip"代表,指定圆角半径为5dip

2、<gradient />  :表示颜色渐变。放射性改变

测试上边两个属性特征:

在drawable/shapetest.xml代码如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

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

    <gradient
        android:endColor="#00ff00"
        android:startColor="#ff0000" />

</shape>

在测试activity的布局文件引入shape.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <TextView
        android:textSize="22sp"
        android:background="@drawable/shapetest"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

</RelativeLayout>

此时显示效果图片:

好了。接着看shape的后边的几个属性:

3、<padding />表示内间距,与布局文件中的padding效果一样,就不做介绍。

4、<size />同上,可以直接在布局文件设置

5、<solid />固定颜色,设置这个原色后,放射颜色就不起作用

6、<stoke />改组件加边框线,看一下设置这个属性后,变为什么样子:

<stroke android:width="1dip"
        android:color="#0000ff"
        android:dashWidth="5dip"
        android:dashGap="5dip"/>

分别表示:外边框颜色宽度为1,颜色为蓝色,破折号长度为5,破折号之间的间距为5.效果截图如下:

到这里shape的基本用法就介绍完了。学习完shape基本用法,在Android简易实战系列第十七话中,完成一个自定义彩色进度条的案例

时间: 2024-11-04 00:23:44

Android初级教程:shape的基本用法的相关文章

Android初级教程:Android中解析方式之pull解析

在安卓中有很多种解析方式.按照大方向有xml解析和json解析.而,细致的分,xml和json解析各有自己的很多解析方式.今天这一篇主要介绍xml解析中的pull解析.对于xml的解析方式,我之前在javaweb一些知识中有写过dom和dom4j等等解析方式.有兴趣的读者可以去javaweb篇里面找相关的内容. 先自定义一个数据源,假设就是访问服务器返回的xml数据文件名称为weather.xml: <?xml version='1.0' encoding='utf-8' standalone=

Android初级教程初谈自定义view自定义属性

有些时候,自己要在布局文件中重复书写大量的代码来定义一个布局.这是最基本的使用,当然要掌握:但是有些场景都去对应的布局里面写对应的属性,就显得很无力.会发现,系统自带的控件无法满足我们的要求,这个时候就要考虑自定义控件.自定义view的世界,也很浩瀚,个人需要学的地方还有很多很多.自定义view,会节省开发效率,很有必要学习其基本原理和方法.接下来就对自定义view,做一个初步的认识,一步步了解封装的重要性.但是,也仅仅是一个初步,因为它实在太灵活了. 有这么一种场景,看图: 除了布局之外,还有

Android初级教程:如何自定义一个状态选择器

有这样一种场景:点击一下某个按钮或者图片(view),改变了样式(一般改变背景颜色).这个时候一种解决方案,可能就是状态选择器.接下来就介绍如何实现状态选择器: 步骤: 一.新建这样的文件夹:res/drawable 二.创建一个xml文件:这里命名为my_select.xml(注意选择select类型的文件) 三.接下来在里面写如下代码: <?xml version="1.0" encoding="utf-8"?> <selector xmlns

Android初级教程:屏幕分辨率

在app编码中经常需要获取手机的屏幕分辨率(宽*高),原来我直接上网拷贝代码,但在使用过程中却发现诸多不便. 不便一:下面代码中的getWidth和getHeight在adt上提示deprecated已经废弃了,实在扎眼 WindowManager wm = getWindowManager(); Display display = wm.getDefaultDisplay(); int screenWidth = display.getWidth(); int screenHeight = d

Android初级教程以动画的形式弹出窗体

这一篇集合动画知识和弹出窗体知识,综合起来以动画的形式弹出窗体. 动画的知识前几篇已经做过详细的介绍,可翻阅前面写的有关动画博文.先简单介绍一下弹出窗体效果的方法: 首先,需要窗体的实例:PopupWindow window = new PopupWindow(contentView, width, height); 总共需要三个参数,三个参数的含义分别是: /  **contentView:窗体属于一个"容器"因此填充一个布局,因此要专门为之建一个布局,它就是填充布局后的view,(

Android初级教程小案例之单选框RadioGroup与复选框CheckBox

Android里面的单选框和html中的其实是一样的效果.这里用到两个控件:CheckBox和RadioGroup.直接上代码: radio.xml布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation=&quo

Android初级教程理论知识(第一章快速入门)

一.综合介绍. Android项目的目录结构 Activity:应用被打开时显示的界面 src:项目代码 R.java:项目中所有资源文件的资源id Android.jar:Android的jar包,导入此包方可使用Android的api libs:导入第三方jar包 assets:存放资源文件,比方说mp3.视频文件 bin:存放编译打包后的文件,apk可直接在手机里安装了. res:存放资源文件,存放在此文件夹下的所有资源文件都会生成资源id drawable:存放图片资源 layout:存

Android初级教程Activity小案例(计算器乘法运算)

首先设置两个布局文件,一个布局文件进行输入数据,获取加法运算:另一个布局文件进行显示最终结果.Activity1启动Activity2,并传递计算结果值给Activity2. main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" androi

Android初级教程进程间的通信AIDL

在介绍跨程序进程间通信AIDL前,先看一下本程序activity与某个服务是怎么绑定在一起进行交互的. 需求:服务有两个方法.分别是播放音乐与停止播放音乐.该程序的活动要访问这两个方法,在activity中控制服务的这两个方法,通过点击按钮的方式实现停止与播放音乐. 对同一个程序服务与活动交互的方式,先给出一张图片: 给出代码(案例为模拟音乐播放器): 一.定义一个服务类MusicService: package com.ydl.music; import android.app.Service