2012-02-11 112 views
5

我有下面的代碼中,我使用的應用程序上下文檢索所需信息:如何將(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投射到上下文。請提出任何解決方案。上面的代碼是不是正確的方式來傳遞上下文?

回答

9

您需要應用程序上下文來訪問共享首選項。它應該是:

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

相關問題