Hacks控件篇-Hack4 为背景添加圆角边框

圆角边框背景

作者:李旺成

时间:2016年5月14日


这个 Hack 将介绍使用自定义形状实现圆角边框背景。

圆角矩形按钮

曾经在 iOS 上非常流行圆角矩形按钮:

iOS圆角矩形按钮

在 Android 上要实现圆角矩形背景也比较简单,可以使用 .9 图片,这里介绍一种更高效,定制性更好的方案,使用自定义形状。

自定义圆角矩形背景

先看看效果:

圆角矩形按钮

实现很简单:

1、创建形状文件
在 res/drawable 目录下创建 button_rounded_background.xml 文件,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#0000ff"/>
    <corners android:radius="15dp"/>
</shape>

简单解释:

  • solid:填充
    android:color指定填充的颜色
  • corners:圆角
    android:radius为角的弧度,值越大角越圆

使用 <shape> 可以实现很多效果,这里不展开了,感兴趣的可以参考官方文档。关于 shape 将会在 AndroidStudyDemo 系列AndroidStudyDemo 分类 中写一篇详解。

2、在布局中使用
将 button_rounded_background.xml 当成普通的 drawable 资源使用即可:

<Button android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="圆角矩形按钮"
    android:layout_centerInParent="true"
    android:textColor="#ffffff"
    android:textSize="30sp"
    android:padding="10dp"
    android:background="@drawable/button_rounded_background"/>

小结

好了,关于圆角矩形的实现介绍到这里,使用很简单,建议尽量使用这种方式来实现圆角矩形背景。定制性高,使用灵活。

项目地址

AndroidHacks合集
控件使用篇

项目示例代码:
RoundButtonActivity.java
button_rounded_background.xml
activity_round_button.xml

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 154,631评论 23 678
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 11,993评论 2 43
  • 昨天下发了端午节放假通知,其实就是按照国家规定来的,所以当有员工问我明天几点上班,我理所当然地回答:正常上班就是平...
    曲晓岩阅读 47评论 0 1
  • 史书遍览频回首, 应是屈子最风流。 上下求索兴邦策, 纵横驰骋念庶忧。 万古离骚成绝唱, 千秋壮举震楚酋。 独醒众...
    湘水碧波阅读 282评论 0 10
  • 盒子模型是什么 在 HTML 中,所有的文档元素被表示为一个元素盒子,这个盒子描述了元素在文档布局中所占的空间大小...
    swpu_Leo阅读 254评论 0 0