【发布时间】:2017-01-27 15:00:37
【问题描述】:
我正在从 Udacity 的一门课程中学习 android 开发。当我在学习第 2 课时,出现了一种情况,我们必须创建多个 Textview,从之前创建的字符串 ArrayList 设置文本并添加这些 Textview到线性布局。
常用代码:
ArrayList<String> words = new ArrayList<String>();
words.add("one");
words.add("two");
words.add("three");
words.add("four");
words.add("five");
words.add("six");
words.add("seven");
words.add("eight");
words.add("nine");
words.add("ten");
LinearLayout rootView =(LinearLayout) findViewById(R.id.rootView);
现在他们做了什么:
for(int i=0;i<10;i++){
TextView wordView=new TextView(this);
wordView.setText(words.get(i));
rootView.addView(wordView);
}
我做了什么:
ArrayList<TextView> wordView = new ArrayList<TextView>();
for(int i=0;i<10;i++)
{
wordView.add(new TextView(this));
wordView.get(i).setText(words.get(i));
rootView.addView(wordView.get(i));
}
现在,我的问题是,我处理任务的方式比他们的方式有更多的内存开销?
我觉得我的代码更好,因为即使在循环之后我也引用了每个 TextView。
【问题讨论】:
标签: android for-loop arraylist textview