我想在两侧的徽标上添加填充或空格,并在此处添加代码。
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:gravity="fill">
<item android:drawable="@color/ns_theme"></item>
<item>
<bitmap android:gravity="center" android:src="@drawable/logo" />
</item>
</layer-list>
答案 0 :(得分:2)
我遇到了同样的问题,我试图在项目中添加填充,但没有任何改变。
<item
android:left="16dp"
android:right="16dp">
<bitmap android:gravity="center"
android:src="@drawable/splash"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"/>
</item>
问题出在重力=“中心”,没有填充。
尝试使用android:重力=“ clip_horizontal”
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/splash_color" />
<item
android:left="16dp"
android:right="16dp">
<bitmap android:gravity="clip_horizontal"
android:src="@drawable/splash"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"/>
</item>
</layer-list>
答案 1 :(得分:0)
使用
android:bottom=""
android:left=""
android:right=""
android:top=""
强> 试试这个
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
android:gravity="fill">
<item android:drawable="@color/ns_theme"></item>
<item
android:bottom="20dp"
android:left="20dp"
android:right="20dp"
android:top="20dp">
<bitmap
android:gravity="center"
android:src="@drawable/logo" />
</item>
</layer-list>
答案 2 :(得分:0)
试试这段代码:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/colorPrimary" />
<item>
<bitmap android:src="@drawable/logo"
android:gravity="center" />
</item>
</layer-list>
答案 3 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/ns_theme" />
<item
android:drawable="@drawable/ic_logo"
android:left="@dimen/_16sdp"
android:right="@dimen/_16sdp" />
</layer-list>
答案 4 :(得分:0)
问题可能是您的徽标太大(您使用的图像文件的像素宽度超过了您运行它的设备的像素密度)。
无论是否是这种情况,考虑到可以在任何具有任何屏幕尺寸的Android设备上运行它可能更好地解决问题。
考虑到这一点,有几个选项比简单地在xml中添加填充更好......例如,你可以:
1)将图像包裹在另一个视图对象中,您可以控制Bhavik Makwana建议的大小和位置。
2)只需简单地重新编辑/重新取样您的图片,使其与目标设备的宽度相匹配,并在图片中包含您想要的空白区域。
3)设计与整个屏幕完全匹配的完整闪屏(将前景和背景组合成一个图像),例如一个分辨率为1080 x 1920,其他屏幕尺寸为其他屏幕。这样你就可以准确地控制它的外观,分辨率为1-1,没有抗锯齿或重新采样。
4)使用this“9-patch”图像方法为徽标定义绝对宽度和高度,但允许拉伸周围的空白区域以适应不同的屏幕尺寸。
或者,最后,最好的方式:
5)使用带有指南的约束布局,以便根据父宽度的百分比而不是绝对值来定义徽标的宽度。
其他一些建议:除非您使用上面的技术#2,否则请确保您使用的logo.png文件如下:
......不喜欢这样:
KaBOOYOW!
-Boober。
答案 5 :(得分:0)
<layer-list
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:gravity="center"
android:layout_height="match_parent"
android:layout_width="match_parent">
<item
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp"
android:gravity="center"
android:background="@mipmap/logo" />
</layer-list>