嗨,我有一个类(MyCustomForm.xml),我用作用户的LoginForm.
现在我想使用SharedPreferences从LoginForm中保存和加载用户名(EditText)中的值,但我不知道如何将SharedPreferences保存的username值设置为LoginForm(MyCustomForm.xml)中的EditText.
我想在我的Main.xml中保存OnPause中的值,并通过类MyCustomForm.xml中的OnCreate加载值
通常我想使用全局的SharedPreferences.
这看起来怎么样?
有人可以帮我走上正轨吗?
它在想这样的Main.xml:
public class AndroidLogin extends Activity implements OnClickListener {
@Override
protected void onPause() {
super.onPause();
Editor e = mPrefs.edit();
e.putString(USERNM, username);
e.commit();
}
}
代码MyCustomForm(LoginForm):
public class MyCustomForm extends Dialog {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(com.sencide.R.layout.inlogdialog);
EditText userTest = (EditText)findViewById(R.id.txtUserName);
userTest.setText(USERNM);
}
}
解决方法:
你可以这样做:
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(YouActivity.this);
String servername = settings.getString("sharedPreferencesKey", "defaultValue");
server.setText(servername); // EditText
你存储这样的数据:
SharedPreferences.Editor editor = settings.edit();
editor.putString("server", "serverName");
编辑:
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
String servername = settings.getString("sharedPreferencesKey", "defaultValue");