0
因此,我目前遇到了SharedPreferences內部的上下文問題,它說LoginActivity.this。這是我的device.java類和LoginActivity是我想從中調用此方法的活動。那麼它會像Device.This還是這些線?從活動到Java類的共享首選方法調用
方法:
public void validateLogin(String username, String password, String ipAddress) {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(LoginActivity.this);
if (sharedPreferences.contains("ip") && sharedPreferences.contains("username") && sharedPreferences.contains("password")) {
String strUsername = sharedPreferences.getString("username", username);
String strPassword = sharedPreferences.getString("password", password);
String strIpAddress = sharedPreferences.getString("ip", ipAddress);
//performLogin(strUsername, strPassword, strIpAddress);
}
}
public void saveSP(String username, String password, String ipAddress) {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(LoginActivity.this);
sharedPreferences.edit()
.putString("ip", ipAddress)
.putString("username", username)
.putString("password", password)
.commit();
}
你只需要把'activity = this;'放在onCreate的某處。我通常把它放在類的開頭,因爲它確保無論如何getActivity()都返回一個對象。 – Namnodorel
乾杯乾得很好!葉我完全消失了,但你起初是正確的:S – Lotse
哦,你還有一件事,你看我在哪裏註釋performLogin。這個方法也在LoginActivity中,我試圖在我的Java類中使用它。我怎樣才能做到這一點? – Lotse