簡體   English   中英

android TextView沒有換行

[英]android TextView no line break

我有一些表行的TableView。 其中之一是這樣的(我在表中有此結構的2個):

        <TableRow
            android:id="@+id/trTimeSettingEndTime"
            android:gravity="center_vertical"
            android:paddingTop="10dp"
            android:paddingBottom="3dp">

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="35dp"
                android:layout_height="35dp"
                android:paddingRight="10dp"
                android:src="@android:drawable/ic_menu_recent_history" />

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="16dp"
                android:text="Start Time" />

            <TextView
                android:id="@+id/tvTimeSettingEndTime"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:textSize="22dp"
                android:text="00:00"
                android:textColor="@color/dark_gray" />
        </TableRow>

圖像尺寸正確。 中間的textview會占用所有可用空間,而正確的textview寬度就是它的內容。

我不明白的第一件事是為什么中間的textview占用了所有空間?

第二,當我從代碼中更改tvTimeSettingEndTime textview時,它的時間更長了,然后文本中斷了一行,而不是調整其寬度。

有人可以解釋為什么占據大部分空間嗎?

如何使第三行根據我在代碼中放入的文本來調整其寬度?

謝謝

聽起來好像您希望第一列為靜態寬度(已經工作),第三列為內容的寬度(wrap_content),第二列為可用空間。 如果是這樣,請嘗試在第二列中使用權重+ 0dp寬度,在第三列中使用wrap_content。

    <TableRow
        android:id="@+id/trTimeSettingEndTime"
        android:gravity="center_vertical"
        android:paddingTop="10dp"
        android:paddingBottom="3dp">

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="35dp"
            android:layout_height="35dp"
            android:paddingRight="10dp"
            android:src="@android:drawable/ic_menu_recent_history" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="0dp"
            android:weight="1"
            android:layout_height="wrap_content"
            android:textSize="16dp"
            android:text="Start Time" />

        <TextView
            android:id="@+id/tvTimeSettingEndTime"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="22dp"
            android:text="00:00"
            android:textColor="@color/dark_gray" />
    </TableRow>

如果希望第二和第三寬度相等,則將它們分別設置為weight = 1和width = 0dp。

還要記住,TableLayout將強制每一行的列寬度相同,如果您要查找每一行的列獨立設置大小,請嘗試使用兩個水平LinearLayouts。

暫無
暫無

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

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