适配器与Activity之间相互传值
来源:互联网 发布:剑雨江湖进阶数据2017 编辑:程序博客网 时间:2024/06/05 15:51
Activity代码
package com.vimi8.app.activity;import android.os.Bundle;import android.support.v7.widget.GridLayoutManager;import android.support.v7.widget.RecyclerView;import android.view.View;import android.widget.Button;import android.widget.Toast;import com.vimi8.app.R;import com.vimi8.app.adapter.BoTitleAdapter;import com.vimi8.app.framework.ActivityBase;import com.vimi8.app.model.Dealer;import java.util.ArrayList;import java.util.List;/** * Created by vimi8 on 2017/6/19. */public class MyBoTitleActivity extends ActivityBase { List<Dealer> dealers = new ArrayList<>(); private RecyclerView recyclerView; private BoTitleAdapter boTitleAdapter; private Button guan_zhu; private String id = ""; @Override protected void initVariables(Bundle savedInstanceState) { } @Override protected int initLayoutViews() { return R.layout.activity_my_bo_title; } @Override protected void initViewsAndStaticData() { recyclerView = (RecyclerView) findViewById(R.id.sub_container); guan_zhu = (Button) findViewById(R.id.guan_zhu); recyclerView.setLayoutManager(new GridLayoutManager(MyBoTitleActivity.this, 3)); dealers.add(new Dealer("1","兴兴超市","http://img1.imgtn.bdimg.com/it/u=2274521812,939606891&fm=26&gp=0.jpg")); dealers.add(new Dealer("2","兴兴超市","http://img1.imgtn.bdimg.com/it/u=1733071988,3600838707&fm=26&gp=0.jpg")); dealers.add(new Dealer("3","兴兴超市","http://img2.imgtn.bdimg.com/it/u=1926648642,2525346282&fm=26&gp=0.jpg")); dealers.add(new Dealer("4","兴兴超市","http://img2.imgtn.bdimg.com/it/u=1926648642,2525346282&fm=26&gp=0.jpg")); dealers.add(new Dealer("5","兴兴超市","http://img2.imgtn.bdimg.com/it/u=1926648642,2525346282&fm=26&gp=0.jpg")); boTitleAdapter = new BoTitleAdapter(MyBoTitleActivity.this,dealers); recyclerView.setAdapter(boTitleAdapter); boTitleAdapter.setOnItemClickListener(new BoTitleAdapter.OnRecyclerViewItemClickListener() { @Override public void onItemClick(View view, String idList) { id+=idList; } }); guan_zhu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MyBoTitleActivity.this,id,Toast.LENGTH_LONG).show(); } }); }}
Adapter代码
package com.vimi8.app.adapter;import android.app.Activity;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.CheckBox;import android.widget.CompoundButton;import android.widget.ImageView;import com.vimi8.app.R;import com.vimi8.app.model.Dealer;import com.vimi8.app.utils.CommonClassPlan;import java.util.ArrayList;import java.util.List;/** * Created by think on 2016/10/21. */public class BoTitleAdapter extends RecyclerView.Adapter<BoTitleAdapter.ViewHolder> implements View.OnClickListener { Activity mContext; List<Dealer> mDatas = new ArrayList<>(); View v; String idList = ""; public BoTitleAdapter(Activity context, List<Dealer> datas) { mContext = context; mDatas = datas; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { v = LayoutInflater .from(parent.getContext()) .inflate(R.layout.item_bo, parent, false); v.setOnClickListener(this); return new ViewHolder(v); } @Override public void onBindViewHolder(final ViewHolder holder, int position) { v.setTag(holder); final Dealer menu = mDatas.get(position); CommonClassPlan.funCircleHeadImage(mContext,menu.getImg(),holder.headImg); holder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked){ idList =menu.getId(); mOnItemClickListener.onItemClick(v,idList); }else { idList = ""; mOnItemClickListener.onItemClick(v,idList); } } }); } @Override public int getItemCount() { return mDatas.size(); } private OnRecyclerViewItemClickListener mOnItemClickListener = null; public interface OnRecyclerViewItemClickListener { void onItemClick(View view, String idList); } public void setOnItemClickListener(OnRecyclerViewItemClickListener listener) { this.mOnItemClickListener = listener; } @Override public void onClick(View v) { if (mOnItemClickListener != null) { //注意这里使用getTag方法获取数据 mOnItemClickListener.onItemClick(v,idList); } } public class ViewHolder extends RecyclerView.ViewHolder{ /** * 菜单名称 */ private ImageView headImg; private CheckBox checkBox; public ViewHolder(final View view) { super(view); headImg = (ImageView) view.findViewById(R.id.head_img); checkBox = (CheckBox) view.findViewById(R.id.checkBox); } }}
效果图:
阅读全文
0 2
- 适配器与Activity之间相互传值
- Activity 与 Fragment 之间相互通信
- Fragment与Activity之间的相互通信
- Fragment与Activity之间的相互通信
- 关于Activity之间相互传值的问题
- Activity和Fragment之间相互传值和调用方法
- Activity与Fragment的相互传值
- Android 两个Activity之间相互跳转传值 并且关闭之前的Activity
- Activity之间的相互调用与传递参数
- Activity之间的相互调用与传递参数
- Activity与Service之间的相互通信方法小结
- Cordova实现activity与html之间相互跳转
- activity与fragment之间相互调用彼此控件
- android开发之fragment与activity之间相互跳转
- activity与适配器动态传值,传操作
- 用Broadcast广播在activity之间、fragment之间、activity和fragment之间相互传数据
- Activity之间跳转与传值
- Activity之间跳转与传值
- Ubuntu 16.04 编译全志6.0Android源码
- Linux基础(四)
- java httpsession强制用户下线
- 【0004】安装win10后,正确删除掉C盘的Windows.old文件夹
- Android车机启动后判断是否存在USB存储设备
- 适配器与Activity之间相互传值
- 解决srcollview嵌套recycleview冲突
- PHP 中对MySql 数据库的增删改查
- 第二行代码第九章笔记
- Hibernate MySql 连接池隔天断开
- Android ADB和shell常用命令
- FFmpeg基本用法
- 使用redis做一次投票活动中tomcat 启动一段时间后死机redis.clients.jedis.exceptions.JedisDataException: value sent to redi
- Mac 环境下svn的安装和使用