有 Java 编程相关的问题?

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

如何将(Android)应用程序上下文传递给Java类?

我有以下代码,其中我使用应用程序上下文检索所需信息:

public class Data{
   private boolean VarA;

   public void setVarA(boolean B,Context ctx)
   {
        SharedPreferences CoreDataStorage = ctx.getSharedPreferences(PREFS_NAME, 0);
    SharedPreferences.Editor editor = CoreDataStorage.edit();
        editor.putBoolean("PrefVarA", VarA);
        edit.commit();
   }

}

现在我从下面的类调用公共方法setVarA()

public class MyActivity extends Activity{

    Data cd = new Data();

    @Override
        public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.registration);
        cd.setVarA(true,this);
    }
}

在上面的活动中,它向我显示了无法从MyActivity转换到上下文的编译错误。请提出解决方案。上述代码是否不是传递上下文的正确方式


共 (1) 个答案

  1. # 1 楼答案

    您需要应用程序上下文来访问共享首选项。应该是:

    cd.setVarA(true,this.getApplicationContext());
    

    在{}的{}中