2011-07-02 130 views
0

我有一個項目,我想「檢查」填充明星當用戶點擊列表中的一個項目列表。列表視圖改變圖像

我有文字&形象,在XML佈局中表示,使用簡單StringAdapter一個ListView。

我已經這樣做實現上述:

 this.listViewSub.setOnItemClickListener(new OnItemClickListener() { 
     @Override 
     public void onItemClick(final AdapterView parent, final View view, final int position, 
       final long id) { 

        ImageView img = (ImageView) view.findViewById(R.id.unchkImg); 
       img.setImageResource(R.drawable.starchk); 

我猜它不這樣做的正確的方式,但我沒有任何想法是怎麼回事編寫它。 由於某種原因,這段代碼改變列表中的幾個隨機項目,之後點擊我對4-5項與圖標改變。

不知道如何正確地解決呢? 謝謝

回答

0

很難說沒有代碼,但我的第一個猜測是,隨着視圖被回收,如果您不重置ImageView以在getView方法中使用默認的「未選中」圖像,該視圖將保持加星標,即使它用於不同的項目。所以你的適配器應該重置ImageView的圖像資源;但在這種情況下,你必須記住,你才能正確地重置的ImageView出演哪些項目:設置它做默認繪製或加星標的之一。