有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用Java(安卓)中其他活动的方法

我有一个难题,我知道如何从其他活动调用方法。。板条箱物体等

但我有个助手。java,用于创建sql小表等,并以如下方式开始:

public class dbHelper extends SQLiteOpenHelper {
.
.
.
}

它工作得很好,但我有一种方法,可以在DB版本更改时进行检查,并重新创建DB表等

比如:

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // pri zmene verzie DB dropne tabulku
        Log.w("DATA", "Upgrading database from version " + oldVersion + " to " + newVersion); 
        db.execSQL("DROP TABLE IF EXISTS plan");
        db.execSQL("DROP TABLE IF EXISTS contacts");

        this.onCreate(db);
}

但我还需要存储我用来告诉应用程序它的新开始的共享首选项。。。但我觉得这有点奇怪:

    SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_FILENAME,MODE_PRIVATE);
    SharedPreferences.Editor editor = sharedPreferences.edit();
    editor.putString("FS", "1");
    editor.commit();

但MODE_PRIVATE会被下划线为error,即使我尝试从其他创建对象的活动调用方法,例如:dataManager db=new dataManager(this);存储共享首选项的方法在哪里?我仍然将其下划线为错误

知道问题出在哪里吗?我正在学习java,但仍然不知道:-/

弗拉德


共 (1) 个答案

  1. # 1 楼答案

    MODE_PRIVATE是在Context类中声明的常量。把MODE_PRIVATE改成Context.MODE_PRIVATE

    这在活动的方法内部运行良好,因为“ActivityContext的子类