仿IOS按鈕點擊效果

在開發(fā)過程經常遇到UI設計出來的按鈕點擊效果與ios一樣,當看到這樣的UI設計時候,第一反應是不是要找UI切圖,沒辦法自己繪制嗎?在這里我們要來學習下自己如何繪制出這樣效果的UI。大家先看下實現(xiàn)好的效果圖


演示圖.gif

怎么樣,是不是跟ios上的效果一樣,其實實現(xiàn)起來很簡單,話不多說,直接上代碼

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false">
        <shape android:shape="rectangle">
            <corners android:radius="50dp" />
            <solid android:color="#8AFF5658" />
        </shape>
    </item>

    <item android:state_pressed="false">
        <shape android:shape="rectangle">
            <corners android:radius="50dp" />
            <solid android:color="#FF5658" />
        </shape>
    </item>

    <item android:state_pressed="true">
        <layer-list>
            <item>
                <shape android:shape="rectangle">
                    <corners android:radius="50dp" />
                    <solid android:color="#FF5658" />
                </shape>
            </item>
            <item>
                <shape android:shape="rectangle">
                    <corners android:radius="50dp" />
                    <solid android:color="#3A000000" />
                </shape>
            </item>
        </layer-list>
    </item>

</selector>

接下來我們來看看設置的幾個屬性
①android:state_enabled="false" 表示當按鈕設置不可點擊【button.setEnable(false)】的時候樣式,這個屬性必須要最先設置,不然沒法生效。
②android:state_pressed="false" 表示未點擊觸摸時候的樣式
③android:state_pressed="true" 表示點擊觸摸時候的樣式,可以看到我們 <layer-list>這個標簽,我們就是使用了層疊顏色實現(xiàn)了仿IOS的點擊效果。最先設置的會在底層。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容