2016-08-24 67 views
0

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

谢谢

这里是回收视图适配器我的样本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); 
    } 
}; 

回答

0

这听起来象是为SharedPreferences,存储计数器的地方,在你的应用程序随时随地获取和更新,这即使在您的应用程序关闭后也会保留其价值。

从这里开始:http://www.tutorialspoint.com/android/android_shared_preferences.htm(包括完整的例子)

片段:

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

insde你应该有下面的代码处理点击的适配器类:

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说的那样添加共享喜好。

+0

谢谢你的回复,我找到了一个办法。 –