簡體   English   中英

在線性布局android中以相對布局包裝文本

[英]Wrapping text in relative layout inside linear layout android

我的列表視圖中有一個項目布局。 我在列表視圖中使用的每個項目都使用此布局。 布局代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="horizontal"
android:id="@+id/view">


<RelativeLayout
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginBottom="10dp"
    android:layout_marginRight="10dp"
    android:layout_marginTop="10dp"
    android:layout_weight="40"
    android:paddingBottom="10dp"
    android:paddingTop="10dp" >

    <TextView
        android:id="@+id/messages_list_element_textview_header"
        style="@style/category_list_textview"
        android:layout_alignParentLeft="true"
        android:padding="5dp"
        android:maxLines="5"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:textColor="@color/bg_login"
        android:textSize="14sp"
        android:text="some text"
        android:inputType="textImeMultiLine" />

    <TextView
        android:id="@+id/messages_list_element_textview_view"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:layout_centerVertical="true"
        android:layout_below="@+id/messages_list_element_textview_header"
        android:textColor="@color/bg_login"
        android:textSize="12sp"
        android:text="some text"
        android:layout_marginLeft="5dp"
        android:padding="5dp" />

</RelativeLayout>
<TextView
    android:id="@+id/messages_list_element_name"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:layout_weight="60"
    android:text="some text"
    android:padding="5dp"/>
 </LinearLayout>

我填充到帶有 id 'messages_list_element_textview_header' 的 textview 的文本不會換行。 我在下面使用的 textview('messages_list_element_textview_view') 用於顯示日期,所以我不想包裝它。

有人可以告訴我如何讓“messages_list_element_textview_header”包裝起來。

謝謝

fill_parent

(在 API 級別 8 及更高版本中已棄用並重命名 MATCH_PARENT)

將小部件的布局設置為 fill_parent 將強制它擴展以占據放置它的布局元素內可用的盡可能多的空間。這大致相當於將 Windows 窗體控件的停靠樣式設置為填充。

將頂級布局或控件設置為 fill_parent 將強制它占據整個屏幕。

wrap_content

將視圖的大小設置為 wrap_content 將強制它擴展到足以包含它包含的值(或子控件)。 對於控件——比如文本框 (TextView) 或圖像 (ImageView)——這將包裹顯示的文本或圖像。 對於布局元素,它將調整布局大小以適應作為其子項添加的控件/布局。

wrap_content 

將根據您的文本大小和文本量進行調整。 它總是可取的。 否則,您可以根據需要將dp設置為60dp增加或減少

 <?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="wrap_content"
  android:background="@color/white"
  android:orientation="horizontal"
  android:id="@+id/view">


  <RelativeLayout
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginBottom="10dp"
    android:layout_marginRight="10dp"
    android:layout_marginTop="10dp"
    android:layout_weight="40"
    android:paddingBottom="10dp"
    android:id="@+id/relative"
    android:paddingTop="10dp" >

    <TextView
        android:id="@+id/messages_list_element_textview_header"
        style="@style/category_list_textview"
        android:layout_alignParentLeft="true"
        android:padding="5dp"
        android:maxLines="5"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:textColor="@color/bg_login"
        android:textSize="14sp"
        android:text="some text"
        android:inputType="textImeMultiLine" />

    <TextView
        android:id="@+id/messages_list_element_textview_view"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:layout_centerVertical="true"
        android:layout_below="@+id/messages_list_element_textview_header"
        android:textColor="@color/bg_login"
        android:textSize="12sp"
        android:text="some text"
        android:layout_marginLeft="5dp"
        android:padding="5dp" />

</RelativeLayout>
<TextView
    android:id="@+id/messages_list_element_name"
    android:layout_width="0dp"
    android:layout_below="@+id/relative"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:layout_weight="60"
    android:text="some text"
    android:padding="5dp"/>
</RelativeLayout>

要嵌套布局,必須有適當的縮進。 你的縮進有錯誤。 最外面的線性布局必須包裹相對布局(相對應該是 1 個制表符空間)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM