我正在努力实现以下效果:这是一个看似浮动的圆圈:http://imgur.com/fjazcfa
为了达到这个目的,我使用了两个ImageView
,每个ImageView
填充了一个可绘制的形状。圆圈ImageView
放置在阴影<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="56dp"
android:layout_height="56dp">
<ImageView
android:id="@+id/shadow_ImageView"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="@drawable/circle_shadow"
android:layout_centerInParent="true"/>
<ImageView
android:id="@+id/color_ImageView"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerInParent="true"
android:src="@drawable/circle"/>
</RelativeLayout>
的顶部,以显示圆圈浮动的外观。我的布局如下:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<size
android:width="48dp"
android:height="48dp"/>
<gradient
android:endColor="@color/clear"
android:startColor="@color/black"
android:type="radial"
android:gradientRadius="125%"/>
</shape>
我的问题是虽然两个xml形状的drawable都出现在布局预览中,但只有圆圈显示在实际设备上。以下是circle_shadow的定义,该定义未显示在设备上:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@color/orange"/>
<size
android:width="40dp"
android:height="40dp"/>
</shape>
以及显示在设备上的圆圈定义:
{{1}}
答案 0 :(得分:1)
试试这个..在circle_shadow
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval" >
<solid android:color="#11000000" />
<gradient
android:centerColor="@android:color/transparent"
android:endColor="@android:color/black"
android:startColor="@android:color/black" />
</shape>
答案 1 :(得分:0)
试试这个,
shadow.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item><layer-list>
<item android:right="5dp" android:top="5dp"><shape android:shape="rectangle">
<corners android:bottomLeftRadius="80dp" android:bottomRightRadius="80dp" android:topLeftRadius="80dp" android:topRightRadius="80dp" />
<gradient android:centerColor="@android:color/transparent" android:endColor="#1A000000" android:startColor="#1A000000" />
<size android:height="150dp" android:width="150dp" />
<!-- <solid android:color="#1A000000" /> -->
</shape></item>
<item android:bottom="10dp" android:left="10dp"><shape android:shape="rectangle">
<solid android:color="#F87217" />
<size android:height="150dp" android:width="150dp" />
<corners android:bottomLeftRadius="80dp" android:bottomRightRadius="80dp" android:topLeftRadius="80dp" android:topRightRadius="80dp" />
<padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />
</shape></item>
</layer-list></item>
</selector>
button.xml
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="69dp"
android:background="@drawable/shadow" />