【问题标题】:Text View Above overrides Text View below it上方的文本视图覆盖其下方的文本视图
【发布时间】:2016-03-10 18:04:47
【问题描述】:

我在一个列表项中有一个 textView,下面有另一个文本视图。 当文本增加时,我一次又一次地面临一个问题。上面的文本视图会覆盖下面的文本视图,或者下面的文本视图位于上面的文本视图之上。

我在 RelativeLayout 中的 XML 是:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tp_activity_wise_badge_fragment_each_item"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/tp_White"
    android:minHeight="60dp">        
<TextView
        android:id="@+id/textview1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_centerVertical="true"
        android:layout_marginLeft="23dp"
        android:layout_marginStart="23dp"
        android:text="Loading Title..."
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="#737574"
        android:textSize="15dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/textview3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/textview1"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignTop="@+id/textview1"
        android:layout_centerVertical="true"
        android:layout_marginEnd="23dp"
        android:layout_marginRight="23dp"
        android:background="@color/tp_White"
        android:gravity="center_vertical|center_horizontal"
        android:maxLines="2"
        android:text="Loading..."
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="#737574"
        android:textSize="15dp" />

    <TextView
        android:id="@+id/textview2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Loading Subtitle..."
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/tp_inactive_channel_text_color"
        android:textSize="11dp"
        android:layout_below="@+id/textview1"
        android:layout_alignLeft="@+id/textview1"
        android:layout_alignStart="@+id/textview1" />

我知道这是一个非常基本的问题,但这对我来说是非常不确定的,我无法定位此视图,以使它们不会相互影响。 任何帮助将不胜感激。

【问题讨论】:

  • 先放截图
  • 你想在哪里做字幕?
  • 您是否为列表视图项设置了最大高度?如果是这样,那么事情会重叠是有道理的。听起来他们的房间快用完了。
  • 我希望我的标题是 center-verticle 和 subtitle 在它下面。但是当文本进入第二行时..subtitle 会超过标题。

标签: android android-layout textview


【解决方案1】:

您需要在代码中使用layout_alignParentRight

设置边距以设置视图的方式不正确

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tp_activity_wise_badge_fragment_each_item"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/tp_White"
    android:minHeight="60dp">        
<TextView
        android:id="@+id/textview1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:text="Loading Title..."
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="#737574"
        android:textSize="15dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/textview3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/textView1"

        android:layout_alignParentRight="true"
        android:gravity="right"

        android:background="@color/tp_White"

        android:maxLines="2"
        android:text="Loading..."

        android:textColor="#737574"
        android:textSize="15dp" />

    <TextView
        android:id="@+id/textview2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Loading Subtitle..."

        android:textSize="11dp"
        android:layout_below="@id/textview1"
         />

【讨论】:

    【解决方案2】:

    你想通过写android:layout_alignTop="@+id/textview1"和同时写android:layout_alignBottom="@+id/textview1"来达到什么目的。

    相反,您可以尝试android:layout_below="@+id/textview1",这将使您的textview 垂直对齐。

    【讨论】:

      【解决方案3】:

      你应该使用LinearLayout(复制粘贴)

      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/tp_activity_wise_badge_fragment_each_item"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:orientation="vertical"
          android:layout_margin="25dp"
          >
      
          <LinearLayout
              android:layout_width="match_parent"
              android:orientation="horizontal"
              android:layout_marginBottom="10dp"
              android:layout_height="wrap_content">
          <TextView
              android:id="@+id/textview1"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="Loading Title..."
              android:textAppearance="?android:attr/textAppearanceSmall"
              android:textColor="#737574"
              android:textSize="15dp"
              android:textStyle="bold" />
      
          <TextView
              android:id="@+id/textview3"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:gravity="right"
              android:text="Loading..."
              android:textAppearance="?android:attr/textAppearanceLarge"
              android:textColor="#737574"
              android:textSize="15dp" />
      
          </LinearLayout>
      
          <TextView
              android:id="@+id/textview2"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="Loading Subtitle..."
              android:textAppearance="?android:attr/textAppearanceSmall"
              android:textSize="11dp"
              />
      
      </LinearLayout>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多