UI库:
1.有圆角带颜色的按钮background xml。
代码实现
<!--bg_ellipse_blue.xml-->
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#990e9ce8" />
<corners
android:bottomLeftRadius="24dp"
android:bottomRightRadius="24dp"
android:topLeftRadius="24dp"
android:topRightRadius="24dp" />
</shape>
使用
<TextView
android:id="@+id/btn_register"
android:layout_width="match_parent"
android:layout_height="41dp"
android:layout_marginLeft="@dimen/dimen_20dp"
android:layout_marginTop="24dp"
android:layout_marginRight="@dimen/dimen_20dp"
android:background="@drawable/ellipse_shape_bottom_blue_24dp"
android:gravity="center"
android:paddingTop="@dimen/dimen_12dp"
android:paddingBottom="@dimen/dimen_12dp"
android:text="登录"
android:textColor="@color/white"
android:textSize="@dimen/dimen_14sp"
/>
效果:
2.有圆角带颜色且支持水波纹点击效果按钮background xml。
代码实现
<!--ripple_blue_round4_selector.xml-->
<?xml version="1.0" encoding="utf-8"?>
<!--蓝色背景 灰色水波纹 radius=4的圆角Selector-->
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#D8D8D8">
<item android:drawable="@drawable/ellipse_shape_bottom_blue_4dp" />
</ripple>
<!--ellipse_shape_bottom_blue_4dp.xml-->
<?xml version="1.0" encoding="utf-8"?>
<!--圆角为4dp的的蓝色背景-->
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#FF1E9AFF" />
<corners
android:bottomLeftRadius="4dp"
android:bottomRightRadius="4dp"
android:topLeftRadius="4dp"
android:topRightRadius="4dp"/>
</shape>
使用
<Button
android:id="@+id/btn_feedback_submit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/Widget.AppCompat.Button.Colored"
android:background="@drawable/ripple_blue_round4_selector"
android:text="提交"
android:textSize="16sp"
/>
效果:
3.四条边一种颜色,中间背景图一种颜色的有圆角按钮background xml。
代码实现
<!--bg_ellipse.xml-->
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<!--背景颜色-->
<solid android:color="@color/white" />
<!--width是边的宽度,color是边的颜色-->
<stroke
android:width="10dp"
android:color="@color/yellow">
</stroke>
<!--圆角大小-->
<corners
android:radius="8dp" />
</shape>
使用
<TextView
...
android:background="@drawable/bg_ellipse"
...
/>
效果:
-
顶部椭圆,底部平角
代码实现
<?xml version="1.0" encoding="utf-8"?>
<!--顶部平角,底部椭圆的有颜色的背景-->
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="@color/blue_FF1E9AFF_alpha" />
<corners
android:bottomLeftRadius="8dp"
android:bottomRightRadius="8dp"
android:topLeftRadius="0dp"
android:topRightRadius="0dp"/>
</shape>
效果图
5.画一个圆background xml。
代码实现
<!--bg_circle_blue.xml-->
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#28BAE3"/>
<size
android:width="8dp"
android:height="8dp"
/>
</shape>
使用
<TextView
...
android:background="@drawable/bg_circle_blue"
...
/>
效果:
还有另外一种写法,但是这个写法宽高好像没起作用,大家可以试下
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="ring"
android:useLevel="false"
android:innerRadius="0dp">
<solid
android:color="#5FC4FD"
></solid>
<size android:height="200dp"
android:width="200dp"></size>
</shape>
效果