带阴影的环形圆形图像

时间:2016-03-11 10:52:47

标签: android android-layout

我们知道要创造这种影子

enter image description here

应该使用这种xml。

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <layer-list>
            <item android:left="4dp" android:top="4dp">
                <shape>
                    <solid android:color="#ff58bb52" />
                    <corners android:radius="30dip"/>
                </shape>
            </item>
        </layer-list>
    </item>
    <item>
        <layer-list>
            <!-- SHADOW LAYER -->
            <item android:left="4dp" android:top="4dp">
                <shape>
                    <solid android:color="#66000000" />
                    <corners android:radius="30dip"/>
                </shape>
            </item>
            <!-- CONTENT LAYER -->
            <item android:bottom="4dp" android:right="4dp">
                <shape>
                    <solid android:color="#ff58bb52" />
                    <corners android:radius="30dip"/>
                </shape>
            </item>
        </layer-list>
    </item>
</selector>

但我们希望实施以下设计。

enter image description here

这可以使用图层来实现吗?

2 个答案:

答案 0 :(得分:0)

要使圆形背景使用一个线性布局设置背景

<LinearLayout
        android:id="@+id/inf_gird_Parent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:layout_marginTop="20dp"
        android:background="@drawable/circle_bg2"
        android:gravity="center"
        android:orientation="vertical">

       <ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/android" />
    </LinearLayout>

并制作一个drawble circle_bg2.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <corners android:radius="10dip" />
    <stroke
        android:width="2dip"
        android:color="@color/white" />

    <size
        android:width="100dp"
        android:height="100dp" />

    <solid android:color="my Green Color" />
</shape>

答案 1 :(得分:0)

这正是您所寻找的

<?xml version="1.0" encoding="utf-8"?>
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item >
        <shape android:shape="oval">
            <solid android:color="@android:color/holo_green_light"/>
            <stroke android:width="2dip" android:color="#FFFFFF"/>
        </shape>  
    </item>
   <item >
       <bitmap android:src="@drawable/ic_launcher" android:gravity="center"/>
    </item>
</layer-list>

只需替换android:src="YOUR-IMAGE" 和按设计的颜色

希望这会有所帮助:)