Прокрутка Gridview - повторное просмотр - PullRequest
0 голосов
/ 05 октября 2011

Я пытаюсь переработать элементы gridview, так как текущее решение работает, но затягивает и поглощает ресурсы. Тем не менее, я не могу понять, как это сделать. Пример сайта разработчика Android не работает для меня.

мой метод getview ():

public View getView(int position, View paramView, ViewGroup paramViewGroup) {
    long starttime = System.currentTimeMillis();

View localView = MMWeb.this.getLayoutInflater().inflate(R.layout.grid_item, null);
TextView localTextView = (TextView)localView.findViewById(2131034115);
ImageView localImageView = (ImageView)localView.findViewById(2131034114);

cItem = items.get(position);
cItem.add(Integer.toString(position));
localTextView.setText(getItemName());
Bitmap localBitmap = d.getImage(cItem.get(3), cItem.get(2));
localImageView.setImageBitmap(localBitmap);
Common.toLog("getView took "+ (System.currentTimeMillis() - starttime) + " ms");
return localView; }

Может ли кто-нибудь указать мне правильное направление ?? Любые предложения о том, как решить эту проблему, будут оценены!

1 Ответ

0 голосов
/ 05 октября 2011

Просто используйте paramView, который представляет собой повторно используемое представление, передаваемое вашим адаптером, так как оно больше не отображается на экране.

 if (paramView == null) {
    // inflate a new view into paramView.
    paramView = MMWeb.this.getLayoutInflater().inflate(R.layout.grid_item, null);
 }
 // fill the paramView
 TextView localTextView = (TextView)paramView .findViewById(2131034115);
 ImageView localImageView = (ImageView)paramView .findViewById(2131034114);

 cItem = items.get(position);
 cItem.add(Integer.toString(position));
 localTextView.setText(getItemName());
 Bitmap localBitmap = d.getImage(cItem.get(3), cItem.get(2));
 localImageView.setImageBitmap(localBitmap);

 return  paramView;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...