android button设置圆角,android如何自定义圆角button效果

科技资讯 投稿 5300 0 评论

android button设置圆角,android如何自定义圆角button效果

以下内容主要是针对遇上android如何自定义圆角button效果等问题,我们该怎么处理呢。下面这篇文章将为你提供一个解决思路,希望能帮你解决到相关问题。

一、准备工作

1、首先,需要准备一个shape文件,可以在drawable文件夹下创建一个xml文件,比如:round_button.xml,内容如下:


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

2、在需要自定义圆角的Button上设置背景,比如:android:background="@drawable/round_button",即可让Button具有圆角效果。

二、设置不同状态的圆角Button

1、如果需要设置Button在不同状态下的圆角效果,可以在shape文件中添加如下内容:


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape android:shape="rectangle">
            <corners
                android:radius="20dp" />
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <corners
                android:radius="10dp" />
        </shape>
    </item>
</selector>

2、在Button上设置背景,比如:android:background="@drawable/round_button_selector",即可让Button在不同状态下具有不同圆角效果。

三、设置不同颜色的圆角Button

1、如果需要设置Button在不同状态下的圆角效果,可以在shape文件中添加如下内容:


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape android:shape="rectangle">
            <corners
                android:radius="20dp" />
            <solid android:color="@color/color_pressed" />
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <corners
                android:radius="10dp" />
            <solid android:color="@color/color_normal" />
        </shape>
    </item>
</selector>

2、在Button上设置背景,比如:android:background="@drawable/round_button_selector_color",即可让Button在不同状态下具有不同颜色的圆角效果。

总结

以上就是为你整理的android如何自定义圆角button效果全部内容,希望文章能够帮你解决相关问题,更多请关注本站相关栏目的其它相关文章!

编程笔记 » android button设置圆角,android如何自定义圆角button效果

赞同 (17) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽