2012-06-17 49 views
0

我有這樣的佈局:的LinearLayout應填寫最小空間

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:gravity="left"> 
    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 
     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Some text" /> 
    </LinearLayout> 
    <TextView 
     android:id="@+id/textView2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="TextView"/> 
</LinearLayout> 

但是,如果在第一個文本視圖(在LinearLayout中)是大量的文字,第二個文本視圖熄滅屏幕。這可以通過將android:layout_weigh =「1」設置爲線性佈局來解決。但是在這種情況下,線性佈局將填充所有空間,並且我需要線性佈局在填充短文本時填充最小空間,而在線性佈局中填充大量文本時不會隱藏第二個文本視圖。

回答

0

如果第一個TextView中佔有太多的橫向空間,第二的TextView在屏幕外渲染...

爲避免屏幕之外的第二TextView的,你需要限制第一的TextView的水平尺寸。你可以給第一個textview一個android:layout_width一個固定的數字值。你可以設置android:singleLine爲false。您可以將android:maxWidth設置爲適當的值。 (我沒有嘗試過這些解決方案,但他們應該工作)。

或者,您可以考慮在一行中使用單個textview而不是兩個。

+0

謝謝。我忘記了android:maxWidth。 – zebraxxl

0

一個解決方案是將您的第一個TextView放入一個ScrollView,並將您的第二個TextView放置在一個永遠不會隱藏的固定頁腳中(這可以完成with a RelativeLayout)。

如果您的第一個TextView中有太多文本,那麼您仍然可以在顯示第二個TextView的同時滾動它。

+0

ScrollView不適合我。應始終顯示第二個文本視圖。如果在第一個文本中查看大量文本,它必須分成幾行。 – zebraxxl