Android listView 每行多个Button 响应点击事件

  1. public class Task_list_single_item_adapter extends BaseAdapter  
  2. {  
  3.   
  4.     LayoutInflater inflater;  
  5.     Context context;  
  6.     public Task_list_single_item_adapter(Context context){  
  7.         this.context=context;  
  8.         inflater=LayoutInflater.from(context);  
  9.     }  
  10.     @Override  
  11.     public int getCount()  
  12.     {  
  13.         return 2;  
  14.     }  
  15.   
  16.     @Override  
  17.     public Object getItem(int position)  
  18.     {  
  19.         return null;  
  20.     }  
  21.   
  22.     @Override  
  23.     public long getItemId(int position)  
  24.     {  
  25.         return position;  
  26.     }  
  27.   
  28.     @Override  
  29.     public View getView(int position, View convertView, ViewGroup parent)  
  30.     {  
  31.         final Holder holder;  
  32.         if(convertView!=null)  
  33.         {  
  34.             holder=(Holder) convertView.getTag();  
  35.         }else {  
  36.             holder=new Holder();  
  37.             convertView=inflater.inflate(R.layout.download_management_item, null);  
  38.             holder.pause=(Button) convertView.findViewById(R.id.dmi_ib1_pause);  
  39.             holder.trys=(Button) convertView.findViewById(R.id.dmi_ib2_recover);  
  40.             holder.install=(Button) convertView.findViewById(R.id.dmi_ib3_install);  
  41.             convertView.setTag(holder);  
  42.         }  
  43.         OnClickListener listener=new OnClickListener(){  
  44.             @Override 
  45.             public void onClick(View v)    //关键代码  position参数获取行   view参数获取具体哪个button
  46.             {  
  47.                 if(v==holder.pause){  
  48.                     Toast.makeText(context, "pause", Toast.LENGTH_SHORT).show();  
  49.                     holder.pause.setVisibility(View.GONE);  
  50.                     holder.trys.setVisibility(View.VISIBLE);  
  51.                     holder.install.setVisibility(View.GONE);  
  52.                 }  
  53.                 if(v==holder.trys){  
  54.                     Toast.makeText(context, "try", Toast.LENGTH_SHORT).show();  
  55.                     holder.pause.setVisibility(View.VISIBLE);  
  56.                     holder.trys.setVisibility(View.GONE);  
  57.                     holder.install.setVisibility(View.GONE);  
  58.                 }  
  59.                 if(v==holder.install)  
  60.                     Toast.makeText(context, "install", Toast.LENGTH_SHORT).show();  
  61.                       
  62.             }  
  63.         };  
  64.         holder.pause.setOnClickListener(listener);  
  65.         holder.trys.setOnClickListener(listener);  
  66.         holder.install.setOnClickListener(listener);  
  67.         return convertView;  
  68.     }  
  69.     class Holder{  
  70.         public Button pause;  
  71.         public Button trys;  
  72.         public Button install;  
  73.     }  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值