我在代码中实现了多个点击监听器。但是,我希望将来自单独图像的每次点击保存在共享首选项的“代码”中。因此,如果在图像 1 上单击 2 次,在图像 2 上单击 4 次,在图像 3 上单击 6 次,则在共享首选项中总共有 12 次“单击”。问题是,每个 onClickListener 似乎都会覆盖另一个,而不是堆叠。关于如何做到这一点的任何想法?
Image1.setOnClickListener(new View.OnClickListener() {
SharedPreferences pref = getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
int numClicks = pref.getInt("Total_Clicks", 0);
@Override
public void onClick (View v) {
numClicks++;
}
SharedPreferences pref =
getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
Editor ed = pref.edit();
ed.putInt("Total_Clicks", numClicks);
ed.apply();
}
});
Image2.setOnClickListener(new View.OnClickListener() {
SharedPreferences pref = getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
int numClicks = pref.getInt("Total_Clicks", 0);
@Override
public void onClick (View w) {
numClicks++;
}
SharedPreferences pref =
getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
Editor ed = pref.edit();
ed.putInt("Total_Clicks", numClicks);
ed.apply();
}
});
Image3.setOnClickListener(new View.OnClickListener() {
SharedPreferences pref = getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
int numClicks = pref.getInt("Total_Clicks", 0);
@Override
public void onClick (View x) {
numClicks++;
}
SharedPreferences pref =
getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
Editor ed = pref.edit();
ed.putInt("Total_Clicks", numClicks);
ed.apply();
}
});