ScrollView + Programmatic View另外=无滚动

时间:2012-11-19 20:10:26

标签: android layout scrollview

我之前不能说我有这个问题,也许我只需要一双新眼睛。以编程方式将视图添加到根ScrollView内的LinearLayout后,ScrollView似乎不知道并且不会滚动。

在下文中,group是LinearLayout的扩展,root是XML布局中的LinearLayout。

我的主要XML布局:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scroll_root"
    style="@style/Standard.Fill" <!-- match_parent in both _width and _height -->
    android:fillViewport="true">

    <LinearLayout
        android:id="@+id/base_group"
        style="@style/BaseGroup" <!-- derived style from Standard.Fill -->
        android:orientation="vertical" />

</ScrollView>

添加视图,例如:

for(int i = 0; i < 95; i++){
    TextView kv = new TextView(this);
    kv.setText("asdas as adsa");

    // kvp is LayoutParams with match_parent and wrap_content
    group.addView(kv, kvp); 
}
root.addView(group, new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));

ScrollView父母似乎并不知道它的LinearLayout孩子已经超出界限并且没有滚动。我尝试过fillViewportlayout_widthlayout_heightrequestLayout()invalidate()等变体无效。

我可能会切换到ListView和适配器工作流程,但这对我来说仍然很奇怪。

如何让我的ScrollView父级唤醒?

0 个答案:

没有答案