0

我正在尝试将文本视图动态添加到列表视图,如下所示。我看到列表视图中出现了项目,但它们显示如下

android.widget.TextView@44f076d0
android.widget.TextView@44f07b58
android.widget.TextView@44f07f50
etc...

   ArrayList<TextView> tv = new ArrayList<TextView>();
        for(int i=0; i < 10; i++){
            TextView t = new TextView(this);
            t.setText("hi there");
            tv.add(t);

        }
        ArrayAdapter<TextView> wordAdapter = new ArrayAdapter<TextView>(this,
                android.R.layout.simple_list_item_1, android.R.id.text1,
                tv);

        this.articleListView.setAdapter(wordAdapter);
4

2 回答 2

1

那是因为您在参数中传递了 TextView 对象的 ArrayList 以获取 Adapter 应显示的内容。因此,您的tv列表对象正在toString()调用它们的方法。toString()对于 TextViews 会给你TextView@number所以这是预期的。将您的 ArrayList 更改tv为 的 ArrayList String,不要创建任何新的 TextView,只需传递新的 String ArrayList 而不是tv. 您的文本将显示正常。

于 2012-12-12T23:23:27.050 回答
0

你可以对你的数组列表进行排序

Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
于 2012-12-13T04:39:23.320 回答