RecyclerView项目点击计数

时间:2016-08-24 16:17:15

标签: android admob android-recyclerview onclicklistener

我正在使用RecyclerView开发一个Android应用程序。我想为每6或7次用户显示一个admob插页式广告,打开一个项目。我想计算用户点击该项目的次数,如果该计数等于6,那么我想显示插页式广告,然后将计数值重置为零,否则只进行正常处理。我希望有一些代码示例,说明如何实现这一点,我们非常感谢任何帮助。

谢谢

以下是我在Recycler视图适配器

中的示例onItemClickListener
OnItemClickListener onItemClickListener = new OnItemClickListener() {
    @Override
    public void onItemClick(View view, int position) {
        Intent intent = new Intent(mContext, DetailView.class);
        intent.putExtra(DetailView.PASSING_DATA, itemData.get(position));
        mContext.startActivity(intent);
    }
};

2 个答案:

答案 0 :(得分:0)

这听起来像SharedPreferences,是存储计数器以从应用中的任何位置获取和更新的地方,即使在您的应用关闭后也会保留其价值。

从这里开始:that(包括完整示例)

片段:

SharedPreferences sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
Editor editor = sharedpreferences.edit();
editor.putInt("key", value);
editor.commit();

答案 1 :(得分:0)

在适配器类中输入您应该具有以下代码来处理点击:

  public static class RecyclerViewHolder extends RecyclerView.ViewHolder          implements View.OnClickListener{
        ImageView imageView;
        TextView txtItemName;
        ArrayList<ListDataProvider> arrayList = new ArrayList<ListDataProvider>();
    Context context;

    public RecyclerViewHolder(View view, Context context, ArrayList<ListDataProvider> arrayList){
        super(view);
        this.arrayList = arrayList;
        this.context = context;
        view.setOnClickListener(this);
        view.setOnClickListener(this);
        imageView = (ImageView) view.findViewById(R.id.img_item);
        txtItemName= (TextView) view.findViewById(R.id.item_name);
     }

    @Override
    public void onClick(View v) {
     //handle the clicks here
     // to have the particular item do
     int position = getAdapterPosition(); 
     ListDataProvider listDataProvider = this.arrayList.get(position);
  }
}

你可以在那里添加共享偏好,就像TWL所说的那样。