问题描述
ShapeableImageView 采用 ShapeAppearanceOverlay 样式项来创建所需的形状和大小。形状系列被切割和倒圆,半径可以用作数字或百分比。 这是我的圆形图像视图的 ShapeAppearanceOverlay 主题:
rightframe.rowconfigure(0,weight = 1)
rightframe.columnconfigure(0,weight = 1)
这是我使用它的布局:
<style name="ShapeAppearanceOverlay.App.circleImageView" parent="">
<item name="cornerFamily">cut</item>
<item name="cornerSize">50%</item>
</style>
这是问题的屏幕截图:
IDE 截图:
解决方法
使用app:shapeAppearanceOverlay
代替style
<com.google.android.material.imageview.ShapeableImageView
app:shapeAppearanceOverlay="@style/ShapeAppearanceOverlay.App.circleImageView"
.../>
,
或者如果您想通过 style
属性使用它:
<style name="Style.App.circleImageView" parent="">
<item name="shapeAppearance">@style/ShapeAppearanceOverlay.App.circleImageView</item>
</style>
<style name="ShapeAppearanceOverlay.App.circleImageView" parent="">
<item name="cornerFamily">cut</item>
<item name="cornerSize">50%</item>
</style>
...
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/user_display_image"
style="@style/Style.App.circleImageView"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/ic_user" />
...