Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java(android)中其他活动的方法_Java_Android_Methods - Fatal编程技术网

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

使用Java(android)中其他活动的方法,java,android,methods,Java,Android,Methods,我有一个难题,我知道如何从其他活动调用方法。。板条箱物体等 但我有dbHelper.java,它处理创建sql小表等问题,并从以下方面开始: public class dbHelper extends SQLiteOpenHelper { . . . } 它工作得很好,但我有一个方法,可以在DB版本更改时进行检查,并重新创建DB表等 比如: @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, in

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

但我有dbHelper.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=newdatamanager(this);存储共享首选项的方法在哪里?我仍然将其下划线为错误

你知道可能是什么问题吗?我正在学习java,但仍然不知道:-/


Vlad是一个常量,在
上下文
类中声明。只需将
MODE\u PRIVATE
更改为
Context.MODE\u PRIVATE


这在活动的方法内部运行良好,因为“
Activity
Context

的一个子类,错误实际上说明了什么?它修复了模式\u PRIVATE,但现在加下划线的是GetSharedReferences,它想创建方法GetSharedReferences(String,Int),我不明白,这项活动有什么特别之处,以至于我无法从其他活动中引用其他方法。我在项目中还有5种其他方法,它们都很好地工作。。唯一不同的是,这个扩展SQLiteOpenHelper
getSharedReferences
也是
Context
类的一个方法。您需要将
上下文
实例(或者它的后代,例如
活动
)传递给您的代码,并在该实例上调用
GetSharedReferences
。SQLiteOpenHelper不是活动!这是你现在所有问题的根源。您需要将上下文传递给类的构造函数(
dbHelper
)。我有这样一个:publicdbhelper(Context-Context){super(Context,DATABASE_-NAME,null,DATABASE_-VERSION);}但是这里可能缺少一些东西,我只是不确定是什么