Android:如何修复与文本重叠的图像?

时间:2017-10-12 16:48:04

标签: android xml

如何修复此错误。基本上,图像与文本重叠。 我们可以用XML解决这个问题吗?

这是代码(当然,它不完整)。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFCC0000"
    >

    <TextView
        android:background="#55000000"
        android:id="@+id/centerButton"
        android:text="RELATIVE LAYOUT RULES!"
        android:textSize="33dp"
        android:textColor="#FFFFFF"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"/>

    <Button
        android:layout_margin="40dp"
        android:padding="20dp"
        android:layout_below="@+id/centerButton"
        android:layout_centerInParent="true"
        android:text="PUSH ME!"
        android:textSize="30dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button4" />

    <ImageView
        android:scaleType="centerInside"
        android:id="@+id/imageView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/Cat"
        android:layout_above="@+id/centerButton"
        android:layout_alignParentStart="true"
        android:layout_marginBottom="39dp" />


</RelativeLayout>

屏幕错误: Error

3 个答案:

答案 0 :(得分:1)

不确定您正在寻找什么但我能想到两个快速解决方案:

首先,您需要将id的{​​{1}}标记更改为其他标记,它目前与您的id具有相同的Button。不好。我想你的意思是centerText

<强> 1。您希望TextView显示在ImageView

要实现这一点,您实际上只需将TextView XML元素移动到ImageView元素下面。因为视图是&#34;分层&#34;在XML布局方面,从上到下排序,这会将TextView置于ImageView之上。

<强> 2。您希望ImageViewTextView

完全重叠

您可以将android:layout_above="@+id/centerButton"更改为android:layout_above="@+id/centerText",其中centerText是您的TextView,当然还有更正的id标记。

希望能解决您的问题!如果没有,请更具体地了解您希望实现的目标!

答案 1 :(得分:1)

更改订单TextView - &gt; ImageView到ImageView - &gt; TextView的

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFCC0000"
    >

    <ImageView
        android:scaleType="centerInside"
        android:id="@+id/imageView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/Cat"
        android:layout_above="@+id/centerButton"
        android:layout_alignParentStart="true"
        android:layout_marginBottom="39dp" />


    <TextView
        android:background="#55000000"
        android:id="@+id/centerButton"
        android:text="RELATIVE LAYOUT RULES!"
        android:textSize="33dp"
        android:textColor="#FFFFFF"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"/>

    <Button
        android:layout_margin="40dp"
        android:padding="20dp"
        android:layout_below="@+id/centerButton"
        android:layout_centerInParent="true"
        android:text="PUSH ME!"
        android:textSize="30dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button4" />



</RelativeLayout>

答案 2 :(得分:0)

Android在XML文件中从上到下绘制其他其他布局。如果您想要上面的TextView绘图,则需要将其置于底部。