android学习笔记33——资源ShapeDrawable

ShapeDrawable

ShapeDrawable用于定义一个基本的几何图像(如,矩形、圆形、线条.......)。

定义ShapeDrawable的XML文件的根元素是<shape.../>,该元素可指定如下属性:

android:shape=["rectangle"|"oval"|"ling"|"ring"]——指定定义那种类型的几何图形。

实例如下:椭圆、渐变背景的文本框

drawable资源文件==》

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

    <!-- 设置填充颜色 -->
    <solid android:color="#fff" />
    <!-- 设置四周的内边距 -->
    <padding
        android:bottom="7dp"
        android:left="7dp"
        android:right="7dp"
        android:top="7dp" />
    <!-- 设置边框 -->
    <stroke
        android:width="3dip"
        android:color="#ff0" />

</shape>

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

    <!-- 定义填充渐变色 angle,角度 -->
    <gradient
        android:angle="45"
        android:endColor="#80FF00FF"
        android:startColor="#FFFF0000" />
    <!-- 设置四周的内边距 -->
    <padding
        android:bottom="7dp"
        android:left="7dp"
        android:right="7dp"
        android:top="7dp" />
    <!-- 设置圆角矩形 -->
    <corners android:radius="8dp" />

</shape>

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

    <!-- 定义填充渐变色 -->
    <gradient
        android:angle="45"
        android:endColor="#00f"
        android:startColor="#ff0"
        android:type="sweep" />
    <!-- 设置四周的内边距 -->
    <padding
        android:bottom="7dp"
        android:left="7dp"
        android:right="7dp"
        android:top="7dp" />
 <!-- 设置圆角矩形 -->
    <corners android:radius="8dp" />

</shape>

布局文件==》
<LinearLayout 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"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/myshape1" />

 <EditText
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:background="@drawable/myshape2" />

  <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/myshape3" />
</LinearLayout>

运行效果:

时间: 2024-10-14 03:25:29

android学习笔记33——资源ShapeDrawable的相关文章

android学习笔记32——资源

Android应用资源 资源分类: 1.无法直接访问的原生资源,保存于asset目录下 2.可通过R资源清单类访问的资源,保存于res目录下 资源的类型以及存储方式 android要求在res目录下用不同的子目录来保存不同的应用程序,如下图:

Android学习笔记(33):Android对话框

Android为我们提供了多种对话框,其中AlertDialog功能最强大,最常用.此外,还有ProgressDialog.DatePickerDialog和TimePickerDialog. AlertDialog.Builder类可以帮助我们方便的创建对话框. 具体步骤如下: 1.创建一个AlertDialog.Builder对象. 2.调用setTitle().setCustomTitle().setIcon()等方法设置对话框标题.图标.内容等. 3.调用AlertDialog.Buil

Android学习笔记(三九):资源resource(下)

在上一次学习笔记中,学习了XML文件的解析,实际上一些简单的activity属性,一些简单的信息,我们也可以放入xml文件中,可以直接放入res/vaules,由系统来进行解析,而无须使用XmlPullParser来自己分析. Dimension 用于字体大小,间距pading等等.常用的尺寸大小详细见Android 学习笔记(十四):Activity-AutoCompleteTextView,一般我们使用dip/dp和sp,因为和in(inch),mm,以及px(像素点)不同,它和物理屏幕尺寸

Pro Android学习笔记(三):了解Android资源(上)

在Android开发中,资源包括文件或者值,它们和执行应用捆绑,无需在源代码中写死,因此我们可以改变或替换他们,而无需对应用重新编译. 了解资源构成 参考阅读Android学习笔记(三八):资源resource(上).XML解析(XmlPullParser),Android学习笔记(三九):资源resource(下). Strings资源.位于res/values下,可以有一个或多个xml文件.其中最为常见的是strings.xml,对于demo这类小例子,为了方便常全部都放在strings.x

【转】Pro Android学习笔记(四):了解Android资源(下)

处理任意的XML文件 自定义的xml文件放置在res/xml/下,可以通过R.xml.file_name来获取一个XMLResourceParser对象.下面是xml文件的例子: <rootname="tom"><--也可以是<root>,本次采用带参数的方式作为实验-->    <leaf>Hello from an elementtest.</leaf>   <leaf>Hello World!</lea

【转】Pro Android学习笔记(三):了解Android资源(上)

在Android开发中,资源包括文件或者值,它们和执行应用捆绑,无需在源代码中写死,因此我们可以改变或替换他们,而无需对应用重新编译. 了解资源构成 参考阅读Android学习笔记(三八):资源resource(上).XML解析(XmlPullParser),Android学习笔记(三九):资源resource(下). Strings资源.位于res/values下,可以有一个或多个xml文件.其中最为常见的是strings.xml,对于demo这类小例子,为了方便常全部都放在strings.x

android学习笔记——利用BaseAdapter生成40个列表项

RT: main.xml ? 1 2 3 4 5 6 7 8 9 10 11 12 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"               android:orientation="vertical"        

Pro Android学习笔记(二九):用户界面和控制(17):include和merge

xml控件代码重用:include 如果我们定义一个控件,需要在不同的layout中重复使用,或者在同一个layout中重复使用,可以采用include的方式.例如定义my_button.xml如下 <?xml version="1.0" encoding="utf-8"?> <Button xmlns:android="http://schemas.android.com/apk/res/android"     androi

Pro Android学习笔记(十):了解Intent(上)

Android引入了Intent的概念来唤起components,component包括:1.Activity(UI元件) 2.Service(后台代码) 3.Broadcast receiver(处理广播消息的代码) 4.Content provider(抽象数据的代码) Intent基本含义 intent是通知平台处理(唤起)的动作.Android唤起的动作将取决于注册了什么动作.例如我们有个简单的Activity:IntentBaiscViewActivity.在AndroidManife