我有一个.png图像,它是一个圆形的形状,只是一个阴影。我所拥有的是ImageButton
,其中包含android:src
属性的图像。对于它的背景,我可以在可绘制文件中有一个xml文件。我现在想要的是让阴影图像成为另一个固体形状后面的png - >机器人:形状="椭圆"
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/shadowimg" />
<item>
<shape android:shape="oval">
<solid
android:color="#d63a33"/>
<size
android:width="70dp"
android:height="70dp"/>
</shape>
</item>
</layer-list>
正如您在代码中看到的那样,我添加了一个带有android:drawable
属性的阴影图像的项目。然而,这不会让阴影显示出来。它只显示红色圆圈形状。但我希望阴影图像背后是纯红色圆圈形状。根据我对图层列表的微小知识,顶部项目位于后面,底部的项目位于第一位。
更新:将图像阴影移动到底部后,我得到了效果,但是实心红色圆圈形状的尺寸太大,改变尺寸不会改变尺寸。
更新代码:
<?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="#d63a33"/>
<size
android:width="5dp"
android:height="5dp"/>
</shape>
</item>
<item android:drawable="@drawable/shadowimg" />
</layer-list>
****更新2:****
我注意到当我删除<item android:drawable="@drawable/shadowimg" />
时,我可以更改实心圆形的大小,但是当我添加它时,它默认为更大的尺寸。
这就是:
如果有人需要,这里是阴影图片:
答案 0 :(得分: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="#d63a33" />
<size
android:height="5dp"
android:width="5dp" />
</shape>
</item>
<item>
<bitmap android:src="@drawable/shadowimg" />
</item>
<item>
<shape android:shape="oval" >
<solid android:color="#00000000" />
<size
android:height="5dp"
android:width="5dp" />
</shape>
</item>
</layer-list>
我添加了另一个具有所需大小的透明层。
答案 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="#d63a33" />
<stroke
android:width="7dp"
android:color="#00000000" />
</shape>
</item>
<item android:drawable="@drawable/shadowimg"/>
</layer-list>
然后使用30dp的高度和30dp的宽度,如
<TextView
android:id="@+id/titleText"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_centerVertical="true"
android:layout_marginLeft="16dp"
android:background="@drawable/circle_white"
android:fontFamily="sans-serif-thin"
android:gravity="center"
android:text="Hi"
android:textColor="#FF000000"
android:textSize="16sp" />
如果你想增加视图的高度和宽度,只需增加笔划的宽度..