R.string.value restituisce il numero ID di riferimento del 'valore' delle risorse. Se guardate la vostra classe R apparirà come qualcosa di simile a questo:
public static final class string {
public static final int value=0x7f040007;
}
ho sperimentato problemi con riferimento al metodo getString(). L'errore esatto che Eclipse sputa a me è:
Il metodo getString (int) non è definito per il tipo di DatabaseHelper.MainDatabaseHelper
Dopo aver letto per un po 'ho capito che è necessario fare riferimento il vostro contesto dell'applicazione per ottenere l'accesso al metodo getString(). Stavo cercando di creare una classe helper SQLDatabase privata in un fornitore di contenuti, tuttavia, che non mi permetteva di fare riferimento al metodo getString(). La mia soluzione finora è quello di fare qualcosa di simile:
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));
}
}
notare questi riferimenti a due contestuali:
contesto .getString()
(getContext()) .getString()
Non so se questo è il migliore a lungo termine s oluzione ma sembra funzionare per il momento. Spero che questo ti aiuti.
ha funzionato alla grande. grazie – Simon
@Sephy Sto avendo un problema con getString(), continuo a ricevere "Il metodo getString (int) non è definito ..." cosa sto facendo male? – mlevit
Cosa provate a ottenere con questo metodo? – Sephy