频道管理

来源:互联网 发布:slideunlock.js 编辑:程序博客网 时间:2024/05/16 19:11

MainActivity:

public class MainActivity extends AppCompatActivity {    private List<String> list;    private SwipeRefreshLayout swipe;    private RecyclerView recyclerView;    private RecyleAdapter recyleAdapter;    private boolean isRefresh = true;    private GridLayoutManager gridLayoutManager;    private GridLayoutManager gridLayoutManager2;    private List<String> list2;    private RecyclerView recyclerView1;    private RecyleAdapter2 recyleAdapter2;    private Button button;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        button = (Button) findViewById(R.id.bianji);        initView();        initData();        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {            }        });    }    private void initData() {        recyclerView = (RecyclerView) findViewById(R.id.recy1);        recyclerView1 = (RecyclerView) findViewById(R.id.recy2);        recyleAdapter = new RecyleAdapter(this);        recyleAdapter2 = new RecyleAdapter2(this);        gridLayoutManager = new GridLayoutManager(this, 3);        gridLayoutManager2 = new GridLayoutManager(this, 3);        recyclerView.setLayoutManager(gridLayoutManager);        recyclerView1.setLayoutManager(gridLayoutManager2);        recyleAdapter.setData(list);        recyleAdapter2.setDataelse(list2);        recyclerView.setAdapter(recyleAdapter);        recyclerView1.setAdapter(recyleAdapter2);        recyleAdapter.notifyDataSetChanged();        recyleAdapter2.notifyDataSetChanged();        recyleAdapter.setOnClick(new RecyleAdapter.onClick() {            @Override            public void onCli(View v, int position) {                Toast.makeText(MainActivity.this, "点击了" + position, Toast.LENGTH_LONG).show();                myData(position);            }        });        recyleAdapter2.setOnClick(new RecyleAdapter.onClick() {            @Override            public void onCli(View v, int position) {                Toast.makeText(MainActivity.this, "点击了" + position, Toast.LENGTH_LONG).show();                elseData(position);            }        });    }    private void initView() {        list = new ArrayList<>();        list2 = new ArrayList<>();        for (int i = 0; i < 15; i++) {            list.add("我的" + i);            list2.add("其他" + i);        }    }    private void elseData(int position) {        list.add(list2.get(position));        recyleAdapter.setData(list);        recyleAdapter.notifyDataSetChanged();        list2.remove(position);        recyleAdapter2.setDataelse(list2);        recyleAdapter2.notifyDataSetChanged();    }    private void myData(int position) {        list2.add(list.get(position));        recyleAdapter2.setDataelse(list2);        recyleAdapter2.notifyDataSetChanged();        list.remove(position);        recyleAdapter.setData(list);        recyleAdapter.notifyDataSetChanged();    }}
RecyleAdapter:
public class RecyleAdapter extends RecyclerView.Adapter {    private List<String> list=new ArrayList<>();    private Context mcontext;    public RecyleAdapter(Context context){        this.mcontext=context;    }    public void setData(List<String> data){            this.list.clear();            this.list.addAll(0,data);    }    @Override    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {        View view = View.inflate(mcontext, R.layout.home_item, null);        MyHolderView myHolderView = new MyHolderView(view);        return myHolderView;    }    @Override    public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {        MyHolderView my= (MyHolderView) holder;        my.textView.setText(list.get(position));        my.textView.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                monClick.onCli(v,position);            }        });    }    @Override    public int getItemCount() {        return list.size();    }    class MyHolderView extends RecyclerView.ViewHolder{        private final TextView textView;        private final TextView te;        public MyHolderView(View itemView) {            super(itemView);            textView = (TextView) itemView.findViewById(R.id.textView);            te = (TextView) itemView.findViewById(R.id.delete_tv);        }    }    public interface onClick{        void onCli(View v, int position);    }    private onClick monClick;    public void setOnClick(onClick onClick){        this.monClick=onClick;    }}
RecyleAdapter2:
public class RecyleAdapter2 extends RecyclerView.Adapter {    private List<String> list=new ArrayList<>();    private Context mcontext;    public RecyleAdapter2(Context context){        this.mcontext=context;    }    public void setDataelse(List<String> data){            this.list.clear();            this.list.addAll(0,data);    }    @Override    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {        View view = View.inflate(mcontext, R.layout.home_item2, null);        RecyleAdapter2.MyHolderView myHolderView = new RecyleAdapter2.MyHolderView(view);        return myHolderView;    }    @Override    public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {        RecyleAdapter2.MyHolderView my= (RecyleAdapter2.MyHolderView) holder;        my.textView.setText(list.get(position));        my.textView.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                monClick.onCli(v,position);            }        });    }    @Override    public int getItemCount() {        return list.size();    }    class MyHolderView extends RecyclerView.ViewHolder{        private final TextView textView;        public MyHolderView(View itemView) {            super(itemView);            textView = (TextView) itemView.findViewById(R.id.textView2);        }    }    public interface onClick{        void onCli(View v, int position);    }    private RecyleAdapter.onClick monClick;    public void setOnClick(RecyleAdapter.onClick onClick){        this.monClick=onClick;    }}