Ich habe eine Aktivität, bei der ein Klick auf die Schaltfläche ein Bündel von Benutzereingabedaten in einer SQLite-Datenbank speichert, die dann ein CardView in einer RecyclerView-Liste auffüllt. Ich möchte einen Zähler erstellen, der mit einem Standardwert von Null beginnt und bei jedem Klicken auf die Schaltfläche "Speichern" (ein neues CardView wird erstellt) um +1 erhöht und dann in der RecyclerView-Liste an den CardView ausgegeben wird.Android: Wie stelle ich einen SharedPreferences-Zähler auf ein RecyclerView TextView ein?
Ich bekomme und Android Studio Fehler in der Adapter-Datei in der OnBindViewHolder-Methode, in der letzten Zeile, wo es beginnt "Halter ..." Wie würde ich den Kontext von der Aktivität in die Adapter-Datei? Ich dachte, getSharedPreferences() erlaubt globalen Kontext, während getPreferences() würde nicht funktionieren.
ich den Zähler mit SharedPreferences in der Aktivitätsdatei mit der Schaltfläche klicken auf:
public class Activity extends AppCompatActivity {
...
public void onClickSave(View v) {
...
int totalcount = 0;
SharedPreferences sp = getSharedPreferences("Share_Prefs",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
editor.putInt("int_key", ++totalcount);
editor.apply();
Die Datei RecyclerView Adapter hat den folgenden Code:
public class Adapter extends RecyclerView.Adapter<Adapter.ListViewHolder> {
....
Context context;
....
public Adapter(Context context, List<UserData> dbList) {
this.context = context;
public class ListViewHolder extends RecyclerView.ViewHolder {
TextView cardBlankTextNums;
public ListViewHolder(View itemView) {
super(itemView);
cardBlankTextNums = (TextView)itemView.findViewById(R.id.cardBlankTextNums);
@Override
public int getItemCount() {
return dbList.size();
}
@Override
public void onBindViewHolder(final ListViewHolder holder, final int position) {
int totalcount = 0;
holder.cardBlankTextNums.setText(dbList.get(position).getSharedPreferences.edit.getInt("int_key",totalcount));
dbList.get (Position) .getSharedPreferences ... die Syntax ist falsch – Pooya
Ok irgendwelche Gedanken über die richtige Syntax? – AJW
Ich werde eine Antwort unter – Pooya