1

我有一個滾動視圖sView,佔用我的整個屏幕,將保持一個線性佈局newLL,也將佔用整個屏幕,將舉行不同數量的文字瀏覽。我希望textviews從屏幕底部開始顯示,然後當它們填滿頂部時變爲可滾動。我的問題是,當我添加背景顏色以查看佈局的位置時,線性佈局newLL似乎將內容封裝在屏幕的頂部,並且不會填滿整個屏幕。這導致textviews從上而下而不是從下往上填充。如何讓linearlayout佔據scrollview的整個空間?

這是我的相關代碼:

ScrollView sView = (ScrollView) findViewById(R.id.scrollView2) 
sView.removeAllViews(); 

LinearLayout newLL = new LinearLayout(this); 
newLL.setOrientation(LinearLayout.VERTICAL); 

ScrollView.LayoutParams sparams = new ScrollView.LayoutParams(
           ScrollView.LayoutParams.MATCH_PARENT, 
           ScrollView.LayoutParams.MATCH_PARENT 
); 
newLL.setLayoutParams(sparams); 
sView.addView(newLL); 

注:當我在textviews補充,我設置它們的重力底部,但由於LinearLayout中包裹和在頂部,它不會做任何事情。我懷疑我的sparams有什麼問題。

回答

2

您需要將android:fillViewport財產設置爲您的ScrollView。你可以在佈局xml中通過放置:

android:fillViewport="true" 

在scrollview描述中。或者,

ScrollView sView = (ScrollView) findViewById(R.id.scrollView2) 
sView.removeAllViews(); 
sView.setFillViewport(true); 
+0

呵呵,不知道我必須那樣做,謝謝! – CookieMonster