我对ImageView有问题,我想将此图像放置在一个仅包含内部透明边框的圆圈中,以便图像占据所有空间,但不离开圆圈。 当前什么不起作用!图片超出了圆圈,我想修复它!你有什么主意吗?
这是我的圈子:
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke
android:width="6dp"
android:color="@color/colorRedLogoDark"/>
<corners android:radius="1000dp"/>
这是我的ImageView:
<ImageView
android:id="@+id/icon_about"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_marginTop="10dp"
android:layout_gravity="center"
android:src="@drawable/thermometer"
android:background="@drawable/background_about"
/>
有可能还是我必须获得圆形图像?
编辑:实际上,我想获得一个带有彩色边框半径的图像!
答案 0 :(得分:1)
我希望您修改background_abtout.xml文件,然后简单地添加以下代码行
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:innerRadius="0dp"
android:shape="ring"
android:thicknessRatio="1.9"
android:useLevel="false" >
<solid android:color="@android:color/transparent" />
<stroke
android:width="6dp"
android:color="@color/colorRedLogoDark"/>
我认为这会很好地工作
答案 1 :(得分:1)
有几种解决方法。
1-您可以将图像包裹在卡片视图中,并将角调整为看起来像圆形。在这种情况下,填充将充当边框
要使用卡片视图获得圆形形状,可以设置形状属性android:shape="ring"
。
app:cardCornerRadius
应该设置为ImageView宽度或高度的一半
2-使用完全像CircleImageView
这样的库