A
Amo2898
Neues Mitglied
- 0
Hallo zusammen,
in meiner App habe ich zwei Activities. Die MainActivity ist ein Kalender mit CalendarView und die TabelleActivity, welche eine Tabelle beinhaltet. Also die App ist sozusagen ein Terminkalender und ich will für jeden Tag was anderes speichern können. Ich klicke auf einen Tag (day), dann öffnet sich das TabellenFenster. Dort setzte ich meine Kreuze und speicher diese auf diesen Tag. Dann gehe ich auf einen anderen Tag im Kalender. Dort setz ich wieder Kreuze und diese werden wieder auf den Tag gespeichert usw. Im Moment habe ich es so, dass die gleiche Tabelle auf alle Tage gespeichert wird (mit Shared Preferences). Wie bekomme ich das hin, dass nur auf einen Tag(day) gespeichert wird ?
Wenn ihr einen Tipp für mich hättet, wie ich das Problem lösen kann, wäre ich sehr dankbar.
MainActivity:
public class MainActivity extends AppCompatActivity {
public static final String TAG= "MainActivity";
private CalendarView calendarView;
@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
calendarView = (CalendarView)findViewById(R.id.calendarView);
calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@NonNull
@override
public void onSelectedDayChange(CalendarView calendarView, int year, int month, int dayOfMonth) {
String date = dayOfMonth + "." + (month + 1) + "." +year ;
Log.d(TAG," dd.MMMM.yyyy:" + date);
Intent intent = new Intent (MainActivity.this, Tabelle.class);
intent.putExtra("DATE", date);
startActivity(intent);
}
});
}
}
Tabelle:
public class Tabelle extends AppCompatActivity implements View.OnClickListener {
public static final String TAG = "Tabelle";
TextView theDate;
Button f21, f31, f41, f22, f23, f24, f25, f35, f26, f27, f28, f29, f210, f211, f36, f38, f37, f46, f48;
String xo = "X";
int[][] MainActivityStorage;
@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tabelle);
theDate = (TextView) findViewById(R.id.date);
Intent incomingIntent = getIntent();
String date = incomingIntent.getStringExtra("DATE");
theDate.setText(date);
btn_1_1 = findViewById(R.id.btn_1_1);
btn_1_1.setOnClickListener(this);
//Tabellenprogrammierung//
f21 = findViewById(R.id.field_2_1);
f31 = findViewById(R.id.field_3_1);
f41 = findViewById(R.id.field_4_1);
f22 = findViewById(R.id.field_2_2);
f36 = findViewById(R.id.field_3_6);
f37 = findViewById(R.id.field_3_7);
f23 = findViewById(R.id.field_2_3);
f48 = findViewById(R.id.field_4_8);
f46 = findViewById(R.id.field_4_6);
f24 = findViewById(R.id.field_2_4);
f211 = findViewById(R.id.field_2_11);
f25 = findViewById(R.id.field_2_5);
f35 = findViewById(R.id.field_3_5);
f26 = findViewById(R.id.field_2_6);
f27 = findViewById(R.id.field_2_7);
f28 = findViewById(R.id.field_2_8);
f29 = findViewById(R.id.field_2_9);
f210 = findViewById(R.id.field_2_10);
f38 = findViewById(R.id.field_3_8);
f21.setOnClickListener(this);
f31.setOnClickListener(this);
f41.setOnClickListener(this);
f22.setOnClickListener(this);
f36.setOnClickListener(this);
f48.setOnClickListener(this);
f23.setOnClickListener(this);
f37.setOnClickListener(this);
f46.setOnClickListener(this);
f24.setOnClickListener(this);
f38.setOnClickListener(this);
f25.setOnClickListener(this);
f35.setOnClickListener(this);
f26.setOnClickListener(this);
f27.setOnClickListener(this);
f28.setOnClickListener(this);
f29.setOnClickListener(this);
f210.setOnClickListener(this);
f211.setOnClickListener(this);
MainActivityStorage =new int[11][11];
SharedPreferences sharedPreferences = getSharedPreferences("MyKey", 0);
f21.setText(sharedPreferences.getString("myKey1", ""));
f22.setText(sharedPreferences.getString("myKey2", ""));
f23.setText(sharedPreferences.getString("myKey3", ""));
f24.setText(sharedPreferences.getString("myKey4", ""));
f25.setText(sharedPreferences.getString("myKey5", ""));
f26.setText(sharedPreferences.getString("myKey6", ""));
f27.setText(sharedPreferences.getString("myKey7", ""));
f28.setText(sharedPreferences.getString("myKey8", ""));
f29.setText(sharedPreferences.getString("myKey9", ""));
f210.setText(sharedPreferences.getString("myKey10", ""));
f211.setText(sharedPreferences.getString("myKey11", ""));
f31.setText(sharedPreferences.getString("myKey12", ""));
f35.setText(sharedPreferences.getString("myKey13", ""));
f36.setText(sharedPreferences.getString("myKey14", ""));
f37.setText(sharedPreferences.getString("myKey15", ""));
f38.setText(sharedPreferences.getString("myKey16", ""));
f41.setText(sharedPreferences.getString("myKey17", ""));
f46.setText(sharedPreferences.getString("myKey18", ""));
f48.setText(sharedPreferences.getString("myKey19", ""));
}
@override
protected void onStop() {
super.onStop();
SharedPreferences sharedPreferences = getSharedPreferences("MyKey", 0);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("myKey1", f21.getText().toString());
editor.putString("myKey2", f22.getText().toString());
editor.putString("myKey3", f23.getText().toString());
editor.putString("myKey4", f24.getText().toString());
editor.putString("myKey5", f25.getText().toString());
editor.putString("myKey6", f26.getText().toString());
editor.putString("myKey7", f27.getText().toString());
editor.putString("myKey8", f28.getText().toString());
editor.putString("myKey9", f29.getText().toString());
editor.putString("myKey10", f210.getText().toString());
editor.putString("myKey11", f211.getText().toString());
editor.putString("myKey12", f31.getText().toString());
editor.putString("myKey13", f35.getText().toString());
editor.putString("myKey14", f36.getText().toString());
editor.putString("myKey15", f37.getText().toString());
editor.putString("myKey16", f38.getText().toString());
editor.putString("myKey17", f41.getText().toString());
editor.putString("myKey18", f46.getText().toString());
editor.putString("myKey19", f48.getText().toString());
editor.commit();
}
//Ausfuehrung
@override
public void onClick(View v) {……}
Liebe Grüße
in meiner App habe ich zwei Activities. Die MainActivity ist ein Kalender mit CalendarView und die TabelleActivity, welche eine Tabelle beinhaltet. Also die App ist sozusagen ein Terminkalender und ich will für jeden Tag was anderes speichern können. Ich klicke auf einen Tag (day), dann öffnet sich das TabellenFenster. Dort setzte ich meine Kreuze und speicher diese auf diesen Tag. Dann gehe ich auf einen anderen Tag im Kalender. Dort setz ich wieder Kreuze und diese werden wieder auf den Tag gespeichert usw. Im Moment habe ich es so, dass die gleiche Tabelle auf alle Tage gespeichert wird (mit Shared Preferences). Wie bekomme ich das hin, dass nur auf einen Tag(day) gespeichert wird ?
Wenn ihr einen Tipp für mich hättet, wie ich das Problem lösen kann, wäre ich sehr dankbar.
MainActivity:
public class MainActivity extends AppCompatActivity {
public static final String TAG= "MainActivity";
private CalendarView calendarView;
@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
calendarView = (CalendarView)findViewById(R.id.calendarView);
calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@NonNull
@override
public void onSelectedDayChange(CalendarView calendarView, int year, int month, int dayOfMonth) {
String date = dayOfMonth + "." + (month + 1) + "." +year ;
Log.d(TAG," dd.MMMM.yyyy:" + date);
Intent intent = new Intent (MainActivity.this, Tabelle.class);
intent.putExtra("DATE", date);
startActivity(intent);
}
});
}
}
Tabelle:
public class Tabelle extends AppCompatActivity implements View.OnClickListener {
public static final String TAG = "Tabelle";
TextView theDate;
Button f21, f31, f41, f22, f23, f24, f25, f35, f26, f27, f28, f29, f210, f211, f36, f38, f37, f46, f48;
String xo = "X";
int[][] MainActivityStorage;
@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tabelle);
theDate = (TextView) findViewById(R.id.date);
Intent incomingIntent = getIntent();
String date = incomingIntent.getStringExtra("DATE");
theDate.setText(date);
btn_1_1 = findViewById(R.id.btn_1_1);
btn_1_1.setOnClickListener(this);
//Tabellenprogrammierung//
f21 = findViewById(R.id.field_2_1);
f31 = findViewById(R.id.field_3_1);
f41 = findViewById(R.id.field_4_1);
f22 = findViewById(R.id.field_2_2);
f36 = findViewById(R.id.field_3_6);
f37 = findViewById(R.id.field_3_7);
f23 = findViewById(R.id.field_2_3);
f48 = findViewById(R.id.field_4_8);
f46 = findViewById(R.id.field_4_6);
f24 = findViewById(R.id.field_2_4);
f211 = findViewById(R.id.field_2_11);
f25 = findViewById(R.id.field_2_5);
f35 = findViewById(R.id.field_3_5);
f26 = findViewById(R.id.field_2_6);
f27 = findViewById(R.id.field_2_7);
f28 = findViewById(R.id.field_2_8);
f29 = findViewById(R.id.field_2_9);
f210 = findViewById(R.id.field_2_10);
f38 = findViewById(R.id.field_3_8);
f21.setOnClickListener(this);
f31.setOnClickListener(this);
f41.setOnClickListener(this);
f22.setOnClickListener(this);
f36.setOnClickListener(this);
f48.setOnClickListener(this);
f23.setOnClickListener(this);
f37.setOnClickListener(this);
f46.setOnClickListener(this);
f24.setOnClickListener(this);
f38.setOnClickListener(this);
f25.setOnClickListener(this);
f35.setOnClickListener(this);
f26.setOnClickListener(this);
f27.setOnClickListener(this);
f28.setOnClickListener(this);
f29.setOnClickListener(this);
f210.setOnClickListener(this);
f211.setOnClickListener(this);
MainActivityStorage =new int[11][11];
SharedPreferences sharedPreferences = getSharedPreferences("MyKey", 0);
f21.setText(sharedPreferences.getString("myKey1", ""));
f22.setText(sharedPreferences.getString("myKey2", ""));
f23.setText(sharedPreferences.getString("myKey3", ""));
f24.setText(sharedPreferences.getString("myKey4", ""));
f25.setText(sharedPreferences.getString("myKey5", ""));
f26.setText(sharedPreferences.getString("myKey6", ""));
f27.setText(sharedPreferences.getString("myKey7", ""));
f28.setText(sharedPreferences.getString("myKey8", ""));
f29.setText(sharedPreferences.getString("myKey9", ""));
f210.setText(sharedPreferences.getString("myKey10", ""));
f211.setText(sharedPreferences.getString("myKey11", ""));
f31.setText(sharedPreferences.getString("myKey12", ""));
f35.setText(sharedPreferences.getString("myKey13", ""));
f36.setText(sharedPreferences.getString("myKey14", ""));
f37.setText(sharedPreferences.getString("myKey15", ""));
f38.setText(sharedPreferences.getString("myKey16", ""));
f41.setText(sharedPreferences.getString("myKey17", ""));
f46.setText(sharedPreferences.getString("myKey18", ""));
f48.setText(sharedPreferences.getString("myKey19", ""));
}
@override
protected void onStop() {
super.onStop();
SharedPreferences sharedPreferences = getSharedPreferences("MyKey", 0);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("myKey1", f21.getText().toString());
editor.putString("myKey2", f22.getText().toString());
editor.putString("myKey3", f23.getText().toString());
editor.putString("myKey4", f24.getText().toString());
editor.putString("myKey5", f25.getText().toString());
editor.putString("myKey6", f26.getText().toString());
editor.putString("myKey7", f27.getText().toString());
editor.putString("myKey8", f28.getText().toString());
editor.putString("myKey9", f29.getText().toString());
editor.putString("myKey10", f210.getText().toString());
editor.putString("myKey11", f211.getText().toString());
editor.putString("myKey12", f31.getText().toString());
editor.putString("myKey13", f35.getText().toString());
editor.putString("myKey14", f36.getText().toString());
editor.putString("myKey15", f37.getText().toString());
editor.putString("myKey16", f38.getText().toString());
editor.putString("myKey17", f41.getText().toString());
editor.putString("myKey18", f46.getText().toString());
editor.putString("myKey19", f48.getText().toString());
editor.commit();
}
//Ausfuehrung
@override
public void onClick(View v) {……}
Liebe Grüße