简体   繁体   中英

I want to add a shadow of a image button in round shape but cant make it

<ImageButton
    android:id="@+id/btn_scan_qr"
    android:layout_width="216dp"
    android:layout_height="203dp"
    android:elevation="10dp"
    android:background="@drawable/roundbutton"
    android:src="@drawable/ic_power_settings_new_black_24dp"
    android:textSize="15dp"
    tools:layout_editor_absoluteX="97dp"
    tools:layout_editor_absoluteY="225dp"

    />

This is Xml code

<item android:state_pressed="false"

    >
    <shape android:shape="oval">

        <corners android:radius="40dp" />
        <solid android:color="#FFFFFF"
            />

        <padding
            android:bottom="40dp"
            android:left="40dp"
            android:right="40dp"
            android:top="40dp" />
    </shape>
</item>

This is Drawable code for shape of oval i want to add shadow of it i have used elevation but it doesnot do anything at all in constrained layout but it does in Linear layout but it is showing shadow in square but i want it in circle

Please try below code

oval shape view with shadow custom_bg.xml

 <?xml version="1.0" encoding="utf-8"?>
 <layer-list>
<item>
    <shape
        android:shape="oval" 
            xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#057F86A6"/>

        <padding
            android:top="2dp"
            android:bottom="2dp"
            android:right="2dp"
            android:left="2dp"/>
    </shape>
</item>

<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#107F86A6"/>

        <padding
            android:top="1.8dp"
            android:bottom="1.8dp"
            android:right="1.8dp"
            android:left="1.8dp"/>
    </shape>
</item>

<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#207F86A6"/>

        <padding
            android:top="1.5dp"
            android:bottom="1.5dp"
            android:right="1.5dp"
            android:left="1.5dp"/>
    </shape>
</item>


<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#357F86A6"/>

        <padding
            android:top="1.1dp"
            android:bottom="1.1dp"
            android:right="1.1dp"
            android:left="1.1dp"/>
    </shape>
</item>


<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#457F86A6"/>

        <padding
            android:top="0.9dp"
            android:bottom="0.9dp"
            android:right="0.9dp"
            android:left="0.9dp"/>
    </shape>
</item>

<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#507F86A6"/>

        <padding
            android:top="0.8dp"
            android:bottom="0.8dp"
            android:right="0.8dp"
            android:left="0.8dp"/>
    </shape>
</item>

<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#607F86A6"/>

        <padding
            android:top="0.5dp"
            android:bottom="0.5dp"
            android:right="0.5dp"
            android:left="0.5dp"/>
    </shape>
</item>

<item>
    <shape
        android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
        <solid
            android:color="#fff"/>
    </shape>
</item>

activity_main.xml

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="vertical"
    android:gravity="center">

<LinearLayout
    android:layout_width="120dp"
    android:layout_height="120dp"
 android:gravity="center"
    android:background="@drawable/custom_button">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button"/>
</LinearLayout>
</LinearLayout>

自定义按钮阴影

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM