创建具有彩色背景和居中图标的可绘制对象
Create drawable with colored background and centered icon
我正在尝试创建一个以颜色为中心的图标绘制的可绘制对象。我试图创建图层列表,但它缩放图标以匹配可绘制大小:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="@color/colorImageHolder"/>
</shape>
</item>
<item android:drawable="@drawable/no_photo" android:gravity="center">
</item>
</layer-list>
这是一张真实的设备图片:
我希望它看起来像这样:
有什么方法可以禁用图标缩放吗?
更新:我的 ImageView
有 scaleType="centerCrop"
,我认为这是问题的根源:( 我试图将 no_photo 可绘制对象放置为背景,但它再次缩放。
试试这个
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="@color/colorImageHolder"/>
</shape>
</item>
<item android:drawable="@drawable/no_photo"
android:bottom="20dp"
android:left="20dp"
android:right="20dp"
android:top="20dp"
>
</item>
</layer-list>
注意:此解决方案仅适用于方形或椭圆形视图,不适用于矩形视图
在您的第二个 <item>
标签内添加以下 <bitmap>
标签,内容如下:
<item>
<bitmap android:src="@drawable/no_photo" android:gravity="center" />
</item>
我正在尝试创建一个以颜色为中心的图标绘制的可绘制对象。我试图创建图层列表,但它缩放图标以匹配可绘制大小:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="@color/colorImageHolder"/>
</shape>
</item>
<item android:drawable="@drawable/no_photo" android:gravity="center">
</item>
</layer-list>
这是一张真实的设备图片:
我希望它看起来像这样:
有什么方法可以禁用图标缩放吗?
更新:我的 ImageView
有 scaleType="centerCrop"
,我认为这是问题的根源:( 我试图将 no_photo 可绘制对象放置为背景,但它再次缩放。
试试这个
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="@color/colorImageHolder"/>
</shape>
</item>
<item android:drawable="@drawable/no_photo"
android:bottom="20dp"
android:left="20dp"
android:right="20dp"
android:top="20dp"
>
</item>
</layer-list>
注意:此解决方案仅适用于方形或椭圆形视图,不适用于矩形视图
在您的第二个 <item>
标签内添加以下 <bitmap>
标签,内容如下:
<item>
<bitmap android:src="@drawable/no_photo" android:gravity="center" />
</item>