2012-08-14 84 views
0

嘗試在較小的屏幕尺寸上呈現以下RelativeLayout。在圖形佈局編輯器中,第二個TextView完全隱藏,但第一個完全展開,顯示完整的文本內容。我知道TextViews應該是可滾動的。爲什麼我的第一個TextView不能容納第二個TextView?

有什麼方法可以使用RelativeLayout並給每個屏幕的相等部分,或者我應該只使用LinearLayout並使用layout_weight?從Android文檔的指導,我的印象是,我應該避免使用LinearLayout而不是RelativeLayout

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/tv1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:fillViewport="true" 
     android:gravity="center" 
     android:text="Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Curabitur molestie tempor ante non interdum. Nullam sit amet diam ligula. Suspendisse ultricies commodo felis in rutrum. Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Curabitur molestie tempor ante non interdum. Nullam sit amet diam ligula. Suspendisse ultricies commodo felis in rutrum.Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Curabitur molestie tempor ante non interdum. Nullam sit amet diam ligula. Suspendisse ultricies commodo felis in rutrum." 
     android:scrollbars="vertical" 
     android:maxlines="100" 
     android:textSize="22dp" > 
    </TextView> 

    <TextView 
     android:id="@+id/tv2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/tv1" 
     android:fillViewport="true" 
     android:gravity="center" 
     android:scrollbars="vertical" 
     android:maxlines="100" 
     android:text="Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Curabitur molestie tempor ante non interdum. Nullam sit amet diam ligula. Suspendisse ultricies commodo felis in rutrum. Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Curabitur molestie tempor ante non interdum. Nullam sit amet diam ligula. Suspendisse ultricies commodo felis in rutrum.Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Curabitur molestie tempor ante non interdum. Nullam sit amet diam ligula. Suspendisse ultricies commodo felis in rutrum." 
     android:textSize="22dp" /> 
</RelativeLayout> 

回答

1

既然你在第一TextView中使用「WRAP_CONTENT」,它填補所有可用空間,那麼就沒有留給第二TextView的空間。如果你希望兩者都有,那麼你可以把它們放在一個LinearLayout中,它們的權重相同,或者你可以在「layout_height」字段中指定一個特定的尺寸。 P.S.如果您希望它們在所有設備上都相同,那麼LinearLayout是您最好的選擇。你也可以在RelativeLayout中使用LinearLayout,以防你想添加任何相對於它們的小部件。

0

支持的方式,如果你可以這樣稱呼它,將使用LinearLayout和佈局權重。有人在另一個答案有neat idea。創建一個不可見的視圖,居中並在視圖的兩側放置兩個文本視圖。

也就是說,它會總是是一個50/50分割,並且不會給您與佈局權重一樣多的靈活性(Shrink/Grow),但它取決於您的需要。

相關問題