R.string.value gibt die Referenz-ID-Nummer der Ressource ‚Wert‘. Wenn Sie auf Ihre R-Klasse aussehen wird es als etwas so aussehen:
public static final class string {
public static final int value=0x7f040007;
}
Ich habe Probleme erlebt die getString() -Methode mit Referenzierung. Der genaue Fehler, dass Eclipse-mich spuckt ist:
Verfahren getString (int) für den Typ DatabaseHelper.MainDatabaseHelper nicht definiert ist
Nach der Lektüre für eine Weile habe ich herausgefunden, dass Sie Ihre Referenz muss Kontext der Anwendung, um Zugriff auf die Methode getString() zu erhalten. Ich habe versucht, eine private SQLDatabase-Helper-Klasse in einem Inhaltsanbieter zu erstellen, die es mir jedoch nicht erlaubte, auf die Methode getString() zu verweisen. Meine Lösung ist so weit, so etwas zu tun:
private class MainDatabaseHelper extends SQLiteOpenHelper {
MainDatabaseHelper(Context context) {
super(context, context.getString(R.string.createRoutesTable), null, 1);
}
public void onCreate(SQLiteDatabase db) {
db.execSQL((getContext()).getString(R.string.createRoutesTable));
}
}
Hinweis Diese beiden Kontext Referenzen:
Kontext .getString()
(getContext()) .getString()
Ich weiß nicht, ob dies die optimale langfristige s ist Lösung scheint aber für den Moment zu funktionieren. Hoffe das hilft.
hat super funktioniert. Danke – Simon
@Sephy Ich habe ein Problem mit getString(), ich bekomme immer wieder "Die Methode getString (int) ist undefiniert ..." Was mache ich falsch? – mlevit
Was versuchen Sie mit dieser Methode? – Sephy