Android 将项目一个接一个地添加到 LinearLayout 中

Android Add Items One By One Into a LinearLayout

我是 Android 的新手,我正在尝试了解如何做到这一点: - 我有一个带有 ScrollView 的 activity,里面有一个 LinearLayout (R.id.my_layout) - 我需要以编程方式添加 TextView,所以我这样做了:

我通过 seContentView 加载主 XML 布局,我将 ScrollView 中的 LinearLayout 称为 "mLayout" 等等。 我从一个文件中加载了一个名称列表,并使用一个名为 populateList() 的函数我做了:

private void populateList() {
    try {

        for (final String team : mTeams) {
            rCount++;
            addRow(team);
        }
    }

addRow() 方法只是创建一个新的LinearLayout (mRow)、一个TextView、2 个Button,将TextView 和2 个Button 添加到LinearLayout,然后我使用addView 将新的mRow 添加到mLayout。 一切正常,但仅当我完成创建列表时才显示滚动视图(因此当 populateList() 结束时)。我想做的是按顺序逐行显示,以使活动看起来更好,并具有一些动画效果。 有没有办法做到这一点? 我希望我能够解释它:-) 谢谢

new Thread(new Runnable() { // i am creating the new thread

        @Override
        public void run() {             
            // so call populateList() function here
        }
    }).start();

对于您的 addRow(String string) 方法,您调用 View.addView(); 的地方以这种方式编辑它,并将以下代码放入您的 addRow(String string) 方法

View.post(new new Runnable() {// view here is mlayout the scrollView.

        @Override
        public void run() {             
            mlayout.addView(yourview); // note yourview should be final,
        //eclipse might help you with that
        }
    });

记得全局声明mlayout,这样你就不必附加final