0
我试图添加两个LinearLayout中在同一行,在代码,但它显示错误:Android.widget.linearlayout不能转换为android.widget.Tablelayout
java.lang.ClassCastException: Android.widget.linearlayout cannot be cast to android.widget.Tablelayout
我的代码:
TableLayout main = (TableLayout) findViewById(R.id.main);
TableRow tr = null;
LinearLayout controw = null;
for (int i = 0; i < llista.size(); i++) {
tr = new TableRow(this);
controw = new LinearLayout(this);
TextView textView = new TextView(this);
ImageView img = new ImageView(this);
Bitmap resizedbitmap = ImagesResources.getInstance()
.StringResourceToBitmapResized(getResources(),
getPackageName(), llista.get(i).getSrcImatge(),
200, 200, true);
img.setImageBitmap(resizedbitmap);
textView.setText(list.get(i).getNameList());
controw.addView(textView);
controw.addView(img);
tr.addView(controw);
tr.addView(controw);
main.addView(tr);
}
如果我只添加一个LinearLayout它工作的很好,但是当我想添加第二个LinearLayout时它会崩溃。 函数StringResourceToBitmapResized返回正确的位图。 而数组列表有4个元素。
感谢
其中是xml文件请注意可能是LinerLayout(TableLayout)findViewById(R.id.main); – 2014-08-27 11:35:19
顺便说一句。你不能多次添加相同的视图 - 'tr.addView(controw); tr.addView(controw);'< - 这些行是错误的。一个视图可以在当时添加到一个地方。您需要为新的子项创建新的LinearLayout。 – 2014-08-27 11:38:51
@Naveen Tamrakar感谢您的回复。我犯了一个错误。谢谢。 – 2014-08-27 11:48:03