我的应用需要列出一项特定活动的文本和图像。列表的每一行有 2 列 - 1 列用于图像,1 列用于字符串。
如果图像数量很少(十个或更少),它就可以工作。当它超过 10(有时是 15)时,应用程序将崩溃。如何使这适用于十多个图像?
以下是列出文本和图像的代码。前 2 行从 strings.xml 检索数据。谢谢。
pic=res.obtainTypedArray(R.array.site_pic);
arr_site = getResources().getStringArray(R.array.site_name);
TableLayout tl = (TableLayout)findViewById(R.id.myTableLayout);
for(int i=0; i<num_site; i++)
{
final TableRow tr = new TableRow(this);
tr.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
tr.setPadding(0, 10, 0, 10);
ImageView iv = new ImageView(this);
iv.setImageDrawable(pic.getDrawable(i));
iv.setAdjustViewBounds(true);
iv.setMaxHeight(80);
iv.setPadding(5, 5, 15, 5);
tr.addView(iv);
TextView tv1 = new TextView(this);
tv1.setText(arr_site[i]);
tv1.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
tv1.setGravity(Gravity.LEFT);
tr.addView(tv1);
tl.addView(tr,new TableLayout.LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
}