编写xml文件放到res/drawable-*/下面最基本的写法如下<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#3A3C39" android:endColor="#181818" android:angle="270" /> <corners android:radius="0dp" /> </shape> 使用方法:android:background="@drawable/shape_background_grey" <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#3A3C39" android:endColor="#181818" android:angle="270" /> <corners android:radius="0dp" /> </shape>使用方法:android:background="@drawable/shape_background_grey" 其中 android:angle="270" 代表方向, 270表示从上到下,180表示从右到左,默认从左 复杂一点的写法如下<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:type="radial" android:gradientRadius="250" android:startColor="#E9E9E9" android:endColor="#D4D4D4" /> </shape> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:angle="0" android:startColor="#FFdaf3fc" android:centerColor="#FFd4e9a9" android:endColor="#FFdaf3fc"/> </shape> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:type="radial" android:gradientRadius="250" android:startColor="#E9E9E9" android:endColor="#D4D4D4" /></shape><shape xmlns:android="http://schemas.android.com/apk/res/android"><gradient android:angle="0" android:startColor="#FFdaf3fc" android:centerColor="#FFd4e9a9" android:endColor="#FFdaf3fc"/></shape>在这里要注意android:type="radial"类型的使用会有不同的效果 android:centerColor="#FFd4e9a9" 通常这个也不是被人常用 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:startColor="#509245" android:centerColor="#3e8532" android:endColor="#509245" android:type="linear" android:angle="90" android:centerX="0.5" android:centerY="0.5" /> <padding android:left="7dp" android:top="7dp" android:right="7dp" android:bottom="7dp" /> <corners android:radius="4dp" /> </shape> <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:startColor="#509245" android:centerColor="#3e8532" android:endColor="#509245" android:type="linear" android:angle="90" android:centerX="0.5" android:centerY="0.5" /> <padding android:left="7dp" android:top="7dp" android:right="7dp" android:bottom="7dp" /> <corners android:radius="4dp" /></shape>android:shape 配置的是图形的形式,主要包括方形、圆形等,上边代码为方形。gradient节点主要配置起点颜色、终点颜色、中间点的坐标、中间点的颜色、渐变角度(90度为上下渐变,0为左右渐变),padding节点主要配置上下左右边距,corners节点配置四周园角的半径。