想要在现有layout.xml中将Linearview添加到LinearLayout

时间:2011-08-02 07:28:21

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

我无法让这个工作,希望得到一些提示,似乎从我的研究代码应该工作,任何想法将不胜感激...

我有一个现有的layout.xml文件,其中包括:

<RelativeLayout style="@style/bodyLayout">
    <ScrollView 
        android:id="@+id/scrollBody"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="false"
    >
        <LinearLayout
            android:id="@+id/scrollLinearLayout"
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
        >           

        </LinearLayout>
    </ScrollView>
</RelativeLayout>

然后我有如下编程代码:

    LinearLayout ll = new LinearLayout(this);
    ll = (LinearLayout)findViewById(R.id.scrollLinearLayout);

    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);

    TextView tv = new TextView(this);
    tv.setId(1);
    tv.setTextSize(R.dimen.text_size_medium);
    tv.setText("test");
    tv.setLayoutParams(lp);
    ll.addView(tv);

显示活动时不会显示新的TextView,我知道我遗漏了一些明显的东西......新的TextView应该出现在LinearLayout部分......

1 个答案:

答案 0 :(得分:2)

我的代码运行正常

LinearLayout ll = (LinearLayout)findViewById(R.id.subLinear);

    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);

    TextView tv = new TextView(this);
    tv.setId(1);
    tv.setTextSize(15);
    tv.setText("test adding");
    tv.setLayoutParams(lp);
    ll.addView(tv);

如果您从任何按钮点击事件添加新的视图(任何内容),则添加此行

ll.invalidate();

它会刷新你的组件