如何为不同的CardView项目启动新意图?

时间:2015-11-30 15:09:44

标签: android android-adapter android-recyclerview android-cardview

我有RecyclerView Adapter

public class CardViewDataMainAdapter extends RecyclerView.Adapter<CardViewDataMainAdapter.ViewHolder> {
        public String[] mColorData;

        public CardViewDataMainAdapter(String[] colorData) {
            mColorData = colorData;
        }

        @Override
        public CardViewDataMainAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
            View itemLayoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.cardview_row, null);
            ViewHolder viewHolder = new ViewHolder(itemLayoutView);
            return viewHolder;
        }

        @Override
        public void onBindViewHolder(ViewHolder viewHolder, int position) {

            viewHolder.card_text.setText(mColorData[position].toString());

        }

        @Override
        public int getItemCount() {
            return mColorData.length;
        }

        public static class ViewHolder extends RecyclerView.ViewHolder {

            public TextView card_text;

            public ViewHolder(View itemLayoutView) {
                super(itemLayoutView);
                card_text = (TextView) itemLayoutView.findViewById(R.id.info_text);
            }

            @Override
            public void onClick(View v) {
            }
        }
    }

我有一个String Array来定义卡片的数据。 大约有20个卡片项,我想开始新的intents,使用RecyclerView循环或if else循环

为每个元素启动另一个switch case活动

我已尝试搜索如何为OnClickListener实施RecyclerView,但每个解决方案要么为所有卡项启动相同的意图,要么给出一些或其他错误

如果需要,我可以发布我的整个项目。

http://i.stack.imgur.com/POcqA.jpg

1 个答案:

答案 0 :(得分:1)

好问题。关注thisthis

基本上你可以在onCreateViewHolder()中添加点击监听器并让你的适配器imeplemt OnClickListener你有单个onClick(),你可以在其中有一个开关或if()基于位置。