首页 > 解决方案 > Android相对布局动态内容重叠

问题描述

这是布局文件。动态较大的内容与 LinearLayout 重叠。当动态内容包含较大的文本时,该问题是可见的 -

 <data>
    <variable
        name="searchItem"
        type="com.demo.search.core.viewmodels.itemviewmodels.UserSearchResultItemViewModel"/>
</data>

<RelativeLayout
    android:id="@+id/search_result_item_container"
    style="@style/search_result_item_container"
    android:background="@{searchItem.layoutBackground}"
    android:contentDescription="@{searchItem.contentDescription}"
    android:onClick="@{searchItem::onClick}"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

   <include
        android:id="@+id/user_details"
        layout="@layout/search_result_user_details"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_centerVertical="true"

        bind:searchItem="@{searchItem}"/>
    <LinearLayout
        android:id="@+id/search_result_user_icons_container"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_gravity="center_vertical"
        android:orientation="horizontal"
        android:layout_alignRight="@+id/user_details"
        android:layout_alignTop="@+id/user_details">
        <ImageButton
            android:id="@+id/search_result_user_video_call_button"
            android:layout_width="@dimen/size_4x"
            android:layout_height="@dimen/size_4x"
            android:layout_gravity="center_vertical"
            android:layout_margin="@dimen/call_buttons_margin"
            android:padding="@dimen/padding_10"
            android:background="?attr/selectableItemBackgroundBorderless"
            android:contentDescription="@string/action_video_call"
            android:onClick="@{() -> searchItem.onVideoCallButtonClick()}"
            android:scaleType="center"
            android:visibility="@{searchItem.shouldShowVideoCallButton()}"
            app:srcCompat="@drawable/icn_video_bluepurple"/>
  --------- has bunch of other buttons too -----------

    </LinearLayout>
</RelativeLayout>

能否请你帮忙?这是问题图片 - 在此处输入图像描述

标签: androidandroid-relativelayout

解决方案


  1. 以编程方式获取包含搜索结果的 textView 的高度。使用

    getMeasuredHeight()或者getHeight()

  2. setMaxLines()使用方法增加你的 textView 包含的 maxLines


推荐阅读