0
我正在使用android共享首选项。我的要求是当应用程序打开时,一个带提交按钮的编辑文本框将 来。当点击提交按钮时,它将移动到第二页。在这里,关闭应用程序后,如果我再次打开,然后 第二页应直接打开。我正在使用自动登录功能。因此,我使用共享偏好的概念。但我的代码不起作用。当我再次打开应用程序时,它仅显示第一页。将数据存储在共享首选项中不起作用
请帮我解决这个问题。
我的代码:
Page1:
private SharedPreferences mPreferences;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edt = (EditText) findViewById(R.id.edt);
mPreferences = getSharedPreferences("CurrentUser", MODE_PRIVATE);
}
public void submit(View v)
{
userphnnumber = edt.getText().toString().trim();
SharedPreferences.Editor editor = mPreferences.edit();
editor.putString("UserName", userphnnumber);
editor.commit();
}
Page2:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
mPreferences = getSharedPreferences("CurrentUser", 0);
myVal = mPreferences.getString("UserName", null);
System.out.println("the myval" + myVal);
}
您好,感谢您的回复..告诉我们要保持在第一页的创建...是我们应该保持在第一页还是第二页? – Amrutha
'if()'检查应该在第一页的onCreate中,这样,如果用户已经在之前的运行中提交了电话号码,我们可以移到第二页上,而不是留在第一页上。仅供参考:我们不会在Android中调用屏幕“页面”,它被慷慨地称为“活动”:) –
嗨,谢谢你,他工作正常......我还需要在sharedpref中存储arraylist。你可以告诉我如何在sharedpref中存储数组列表吗? – Amrutha