开发者社区> 问答> 正文

请问Android 怎么在适配器中启动intent跳转activity ?

如题 如何在适配器中启动intent跳转activity

展开
收起
爵霸 2016-03-12 09:41:40 3362 0
1 条回答
写回答
取消 提交回答
  • 你在适配器中传入context就可以了。

     public class ProductListAdapter extends BaseAdapter {
        private Context context;
        private List<String> listData;
        private ViewHolderProduct viewHolderProduct;
        public ProductListAdapter(Context context,List<String> listData){
            this.context = context;
            this.listData = listData;
        }
    
        @Override
        public int getCount() {
            return listData == null ? 0 : listData.size();
        }
    
        @Override
        public Object getItem(int position) {
            return listData == null ? null : listData.get(position);
        }
    
        @Override
        public long getItemId(int position) {
            return position;
        }
    
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            if(convertView == null || convertView.getTag() == null){
                viewHolderProduct = new ViewHolderProduct();
                convertView = LayoutInflater.from(context).inflate(R.layout.product_item_layout,null);
                viewHolderProduct.iv_pro_pic = (ImageView) convertView.findViewById(R.id.iv_imageView);
                viewHolderProduct.tv_pro_date = (TextView) convertView.findViewById(R.id.tv_pro_date);
                viewHolderProduct.tv_pro_desc = (TextView) convertView.findViewById(R.id.tv_pro_desc);
                viewHolderProduct.tv_pro_from = (TextView) convertView.findViewById(R.id.tv_pro_from);
                viewHolderProduct.tv_pro_name = (TextView) convertView.findViewById(R.id.tv_pro_name);
                viewHolderProduct.tv_pro_number = (TextView) convertView.findViewById(R.id.tv_pro_number);
                viewHolderProduct.tv_pro_price = (TextView) convertView.findViewById(R.id.tv_pro_price);
                convertView.setTag(viewHolderProduct);
            }else{
                viewHolderProduct = (ViewHolderProduct) convertView.getTag();
            }
            viewHolderProduct.tv_pro_price.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent intent = new Intent(context, LoginActivity.class);
                    context.startActivity(intent);
                }
            });
            return convertView;
        }
    
        class ViewHolderProduct{
            TextView tv_pro_number,tv_pro_name,tv_pro_desc,tv_pro_from,tv_pro_date,tv_pro_price;
            ImageView iv_pro_pic;
        }
    
    }
    2019-07-17 19:00:09
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载