
Linux4ever
Fortgeschrittenes Mitglied
- 27
Hallo und guten Abend,
ich habe einen AsyncTask der Daten via Internet herunterlädt. Diese werden anschließend in eine Tabelle eingetragen (dynamisch). Wenn eine bestimmte TextView in der Tabelle geklickt wird, soll via deren ID der Text geholt werden und dieser Text ist dann der Key für die Preference. Jedoch erhalte ich immer den Defaultwert zurück.
Ich habe bereits davor in dem AsyncTask mehrfach auch eine andere Preference-Datei zugegriffen, dies funktioniert jedoch einwandfrei.
Aufruf des AsyncTask:
Weiß jemand, wieso dies plötzlich nicht mehr funktioniert? Der einzige Unterschied zur anderen Prefs-Datei ist, das die teachers-Datei nur an dieser einzigen Stelle verwendet wird. Die andere Prefs-Datei wird querbeet in mehreren Activitys verwendet und funktioniert einwandfrei...
Danke im Voraus,
L4E
ich habe einen AsyncTask der Daten via Internet herunterlädt. Diese werden anschließend in eine Tabelle eingetragen (dynamisch). Wenn eine bestimmte TextView in der Tabelle geklickt wird, soll via deren ID der Text geholt werden und dieser Text ist dann der Key für die Preference. Jedoch erhalte ich immer den Defaultwert zurück.
Code:
TextView tv11 = new TextView(context);
tv11.setId((int) (Math.random() * 1000000000));
tv11.setText(nameList.item(3).getTextContent()); // Aus XML-String
tv11.setBackgroundResource(R.drawable.cell_shape);
tv11.setPadding(4, 0, 4, 0);
if (nameList.item(2).getTextContent().contains("x"))
{
tv11.setBackgroundResource(R.drawable.cell_shape_red);
}
tv11.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
int id = v.getId();
String teacher = ((TextView) view.findViewById(id)).getText().toString(); // Abkürzung des Lehrers, meist zwei Buchstaben
if ((!teacher.equals("---")) && (!teacher.equals("")))
{
SharedPreferences sharedTeachers = context.getSharedPreferences("teachers", 0);
String fullName = sharedTeachers.getString(teacher, "Hoppla, nicht gefunden...");
Toast.makeText(context, teacher + ": " + fullName, Toast.LENGTH_LONG).show();
}
}
});
Code:
<resources>
<string name="kürzel">Voller Name</string>
<string name="Mü">Hr. Müller</string>
<string name="Ma">Hr. Maier</string>
</resources>
Aufruf des AsyncTask:
Code:
DownloadTask download = new DownloadTask(container.getContext(), day, tblLayout, rootView);
download.execute((Void) null);
Danke im Voraus,
L4E