我正在尝试将我的arraylist中的每个值显示给我手动创建的每个textView或修复textView
totalCardPerPage = 30;
cardNumber = 1;
//looping to determine textView id in my xml
for(int x=1;x<=totalCardPerPage;x++){
//textView id
textId = "text"+cardNumber;
int id = getResources().getIdentifier(textId, "id", "com.example.radioexample");
TextView currcell = (TextView) findViewById(id);
//get array size
int arrayListSize = arrayListPage1.size();
//looping to show each value in textView
for(int y=0; y<=arrayListSize; y++){
currcell.setText(arrayListPage1.get(y).toString);
currcell.setBackgroundColor(Color.RED);
}
cardNumber++;
}
问题是循环显示textView中的每个值。
运行此代码时出错
我意识到它是为了在arraylist中循环,我的数组中的所有值都只在一个textView中聚集在一起
如果我的数组中有5个值,则每个textView中都会显示每个值。
例如,
arraylist {a,b,c,d,e};
text1.setText(a);
text2.setText(b);
text3.setText(c);
text4.setText(d);
text5.setText(e);
谁知道怎么做?
感谢
答案 0 :(得分:-1)
此问题已过时BUT
是Google搜索中的第一个结果。
要完成这项工作,您必须在循环中调用 arraylist 的所有值,并设置为特殊的 Textview ,如下所示:
如果你有这个arraylist和textviews
arraylist {a,b,c,d,e};
TextView []tv=new TextView[5];
tv[0]=(TextView)findViewById(R.id.____);
tv[1]=(TextView)findViewById(R.id.____);
tv[2]=(TextView)findViewById(R.id.____);
tv[3]=(TextView)findViewById(R.id.____);
tv[4]=(TextView)findViewById(R.id.____);
//将加载arraylist的循环转换为特殊的Textviews
for(int i=0;i<arraylist.size();i++)
{
tv[i].setText(arraylist.get(i).toString());
}