2013-11-21 85 views
0

我有一個列表視圖,我想要的是當我點擊listView行時,我在ListView行中使用的Imageview更改爲不同的drawable。這是我嘗試過的代碼。更改Imageview點擊ListViewItem在android

lvAdminData.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> parent, 
        View convertView, int position, long id) { 
       @SuppressWarnings("unused") 
       RelativeLayout rel=(RelativeLayout) adapter.getView(position, null,null); 
       ImageView arrowView=(ImageView) rel.getChildAt(2); 
       arrowView.setImageResource(R.drawable.info_details_navigation_white); 
          } 
     }); 
    } 

這裏是快照:

This white should turn into blue on click of row

+1

究竟是什麼問題? –

+0

我希望在這一行上的任何地方點擊並改變這個箭頭圖像。 – pioneerBhawna

回答

0

試試這個..

lvAdminData.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

    @Override 
    public void onItemClick(AdapterView<?> parent,View convertView, int position, long id) {  

     ImageView arrowView=(ImageView) convertView.findViewById(R.id.yourid); //replace with your ImageView id 
     arrowView.setImageResource(R.drawable.info_details_navigation_white); 
     } 
}); 
0

嘗試這種在

lvAdminData.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

@Override 
public void onItemClick(AdapterView<?> parent,View convertView, int position, long id) {  

    ImageView arrowView=(ImageView) convertView.findViewById(R.id.imageid); 
    arrowView.setImageResource(R.drawable.info_details_navigation_white); 
    } 

});

+0

當我們點擊圖片時,您的代碼將起作用,但我希望在任何地方點擊一下,它就會改變。 – pioneerBhawna

+0

嘗試使用convertView.setOnClickListner並參見 – Invader

0

嘗試

rel.invalidate() ; 

arrowView.setImageResource(R.drawable.info_details_navigation_white); 
0

解決:我已經找到直接的imageview的ID。現在它的工作。

lvAdminData 
     .setOnItemClickListener(new AdapterView.OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> parent, 
        View convertView, int position, long id) { 

       ImageView arrowView=(ImageView) convertView.findViewById(R.id.imageViewArrow); 
       arrowView.setImageResource(R.drawable.info_details_navigation); 
       onAdminItemClick(parent, position); 
      } 
     }); 
+0

嘗試使用更多項目,以便在上下滾動時必須滾動並查看它是否仍然有效。 – grexter89