Я динамически обновляю раскладку таблицы, как показано ниже, где я добавляю кнопку image и Textview для каждого tableRow. Каждый раз, когда я запускаю свою деятельность, она показывает только 4 строки (на самом деле должна отображать 10), но если я сохраню точки останова в коде иОтладка медленно, чтобы выяснить проблему, он отображает все 10 строк правильно.Я сомневаюсь, что это должно быть проблема с памятью в коде, так как я получаю изображения из Интернета, которые, как мне кажется, занимают много памяти.Я пытался освободить память просмотров после добавления в макет, но он постоянно падает.
Пожалуйста, дайте мне знать, где я делаю неправильно.
for (int i = 0; i < parsedExampleDataSet.getAppNameString().size(); i++)
{
TableRow row = new TableRow(this);
TextView tv = new TextView(this);
tv.setText("AppName: "+ parsedExampleDataSet.getAppNameString().get(i) +"\n" + "Description: " + parsedExampleDataSet.getDescriptionString().get(i));
ImageButton imgBtn = new ImageButton(this);
URL aURL = new URL(parsedExampleDataSet.getImageUrlString().get(i));
URLConnection conn = aURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
Bitmap bm = BitmapFactory.decodeStream(bis);
imgBtn.setImageBitmap(bm);
imgBtn.setBackgroundColor(color.transparent);
imgBtn.setTag(parsedExampleDataSet.getMarketLinkString().get(i));
bis.close();
is.close();
row.addView(imgBtn);
row.addView(tv);
table.addView(row,new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); //here table is a tablelayout object
}
Заранее спасибо
Пратима