【问题标题】:How do I get the linearlayout to take up the whole space of the scrollview?如何让线性布局占据滚动视图的整个空间?
【发布时间】:2016-08-18 17:58:03
【问题描述】:

我有一个滚动视图sView,它占据了我的整个屏幕,它可以容纳一个线性布局newLL,它也将占据整个屏幕,可以容纳各种数量的文本视图。我希望文本视图从屏幕底部开始显示,然后在它们填充到顶部时变得可滚动。我的问题是,当我添加背景颜色以查看布局的位置时,线性布局newLL 似乎将内容包裹在屏幕顶部并且不会填满整个屏幕。这会导致文本视图从上到下而不是自下而上填充。

这是我的相关代码:

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 时,我将它们的重力设置为底部,但由于线性布局包裹并位于顶部,它没有做任何事情。我怀疑我的sparams 有问题。

【问题讨论】:

    标签: android android-layout android-linearlayout textview android-scrollview


    【解决方案1】:

    您需要将android:fillViewport 属性设置为您的ScrollView。您可以在布局 xml 中执行此操作,方法是:

    android:fillViewport="true"
    

    在滚动视图描述中。或者,

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-28
      • 2017-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多