其他分享
首页 > 其他分享> > android-RelativeLayout背景可绘制的重叠内容

android-RelativeLayout背景可绘制的重叠内容

作者:互联网

我有一个9补丁drawable(date_time).我想将此可绘制对象放置在“相对布局”内容的后面,因此所有子视图都应绘制在此图像的顶部.
这是xml布局:

<RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="23dp"
            android:layout_below="@id/tv_map_address"
            android:layout_marginTop="11dp"
            android:layout_marginBottom="12dp"
            android:background="@drawable/date_time">

            <ImageView
                android:id="@+id/iv_map_distance"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:layout_centerVertical="true"
                android:src="@drawable/ic_map_distance"/>

            <TextView
                android:id="@+id/tv_map_distance"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/iv_map_distance"
                android:layout_centerVertical="true"
                android:textColor="@color/white"
                android:textSize="11sp"
                android:text="2,7 км"
                fontPath="fonts/Roboto-Medium.ttf"/>

            <ImageView
                android:id="@+id/iv_map_path"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/tv_map_distance"
                android:layout_centerVertical="true"
                android:src="@drawable/ic_map_path"/>

            <TextView
                android:id="@+id/tv_map_path"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/iv_map_path"
                android:layout_centerVertical="true"
                android:textColor="@color/white"
                android:textSize="11sp"
                android:text="3,2 км"
                fontPath="fonts/Roboto-Medium.ttf"/>

        </RelativeLayout>

但是这种背景与所有子内容都有重叠之处.
这里显示发生了什么.

但是如果我更换

android:background="@drawable/date_time"

android:background="#0000FF"

一切都很好,输出是下一个:

你能解释一下我在做什么错吗?

更新:
这是我的9补丁可绘制对象.

解决方法:

就像我认为您的内容指示器不正确一样(除非您想在9补丁中引入这样的内容填充).尝试以下方法:

右侧和底部参考线确定内容应占据可绘制对象的哪一部分(或多少部分).您已将该区域设置为很小的空间,并设置了Layout的固定高度.换句话说:9-patch强制您的Layout使其子元素仅占据视图的一小部分区域(这是由于您不让Layout拉伸而受到限制).

标签:android-layout,android-background,android
来源: https://codeday.me/bug/20191120/2043218.html