安卓记住密码登陆后按下back键密码不见

qq_26592385 2018-10-01 04:13:39
打开的时候,帐号和密码都有了(已经记住之前输入的),登录之后,按下返回键,但是密码和账户都不见了,只有退出应用后重新打开才会有是什么原因呢?真是百思不得其解
pref= PreferenceManager.getDefaultSharedPreferences(this);//静态方法
//pref=getPreferences(0);
zhanghaoshuru=(EditText)findViewById(R.id.zhanghaoshuru);
mimashuru =(EditText)findViewById(R.id.mimashuru);
denglu=(Button)findViewById(R.id.denglu) ;
jizhumima =(CheckBox)findViewById(R.id.jizhumima);

boolean is=pref.getBoolean("data",false);
if( is){
String a=pref.getString("zhanghaoshuru","");
String b =pref.getString("mimashuru","");
zhanghaoshuru.setText(a);
mimashuru.setText(b);
jizhumima.setChecked(true);
}

else{}
denglu.setOnClickListener(new View.OnClickListener() {
@SuppressLint("ShowToast")
@Override
public void onClick(View view) {
String a=zhanghaoshuru.getText().toString();
String b=mimashuru.getText().toString();
if(a.trim().equals("admin")&&b.trim().equals("admin")){
editor=pref.edit();
if(jizhumima.isChecked()){
editor.putBoolean("data",true) ;
editor.putString( "zhanghaoshuru" , a );
editor.putString( "mimashuru" , b );
}
else {
editor.putBoolean("data",false) ;
editor.clear();

}editor.apply();


Intent intent=new Intent(denglumima.this,MainActivity.class);
startActivity(intent);
...全文
1733 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
_周星星 2018-10-17
  • 打赏
  • 举报
回复
在onResume中设置显示密码和账号
冰云Air 2018-10-15
  • 打赏
  • 举报
回复
登录成功后,如果你没有把登录界面finish()掉,它仍然存在栈底部,好像是处于onPause()还是onStop()状态,你点击返回的的时候直接finish()的操作,会把栈底的登录界面显示上来。你可以尝试在onResume()中去拿SharedPreferences的数据,或者设置登录界面的启动方式为singtask,在点击返回的时候执行跳转(Intent)再finish()。
aneigei 2018-10-09
  • 打赏
  • 举报
回复
登录之后 登录界面是不是得释放掉
number1killer 2018-10-05
  • 打赏
  • 举报
回复
引用 2 楼 qq_26592385 的回复:
登录之后,进入主界面,然后按下返回键,又回到登录界面,这个时候,帐号和密码都不见了,除非结束app的运行,然后重新打开,帐号密码都有,也就是说,打开app是进入登录界面,帐号密码都会存在,但是登录进去之后,,进入主界面,在按back键回到登录界面,这个时候帐号和密码都没有了,这样说能明白了吗?

也就是说,账号和密码其实是保存下来了,但是没有关联到back后的表单里面,须要重启程序才会加载进来。
舜元 2018-10-04
  • 打赏
  • 举报
回复
有点难哦~~~~
YXTS122 2018-10-02
  • 打赏
  • 举报
回复
引用 楼主 qq_26592385 的回复:
打开的时候,帐号和密码都有了(已经记住之前输入的),登录之后,按下返回键,但是密码和账户都不见了,只有退出应用后重新打开才会有是什么原因呢?真是百思不得其解
pref= PreferenceManager.getDefaultSharedPreferences(this);//静态方法
//pref=getPreferences(0);
zhanghaoshuru=(EditText)findViewById(R.id.zhanghaoshuru);
mimashuru =(EditText)findViewById(R.id.mimashuru);
denglu=(Button)findViewById(R.id.denglu) ;
jizhumima =(CheckBox)findViewById(R.id.jizhumima);

boolean is=pref.getBoolean("data",false);
if( is){
String a=pref.getString("zhanghaoshuru","");
String b =pref.getString("mimashuru","");
zhanghaoshuru.setText(a);
mimashuru.setText(b);
jizhumima.setChecked(true);
}

else{}
denglu.setOnClickListener(new View.OnClickListener() {
@SuppressLint("ShowToast")
@Override
public void onClick(View view) {
String a=zhanghaoshuru.getText().toString();
String b=mimashuru.getText().toString();
if(a.trim().equals("admin")&&b.trim().equals("admin")){
editor=pref.edit();
if(jizhumima.isChecked()){
editor.putBoolean("data",true) ;
editor.putString( "zhanghaoshuru" , a );
editor.putString( "mimashuru" , b );
}
else {
editor.putBoolean("data",false) ;
editor.clear();

}editor.apply();


Intent intent=new Intent(denglumima.this,MainActivity.class);
startActivity(intent);

我按照楼主的代码敲打了一遍,然后运行,发现第一次跳转成功登录后按返回键帐号和密码仍然存在,退出app后再重新打开app帐号和密码仍然存在,
可这时想要按登录按钮却一点反应都没有,没跳转
YXTS122 2018-10-02
  • 打赏
  • 举报
回复
public class MainActivity extends Activity {
EditText zhanghaoshuru,mimashuru;
Button denglu;
CheckBox jizhumima;
SharedPreferences pref;
SharedPreferences.Editor editor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pref= PreferenceManager.getDefaultSharedPreferences(this);//静态方法
//pref=getPreferences(0);
zhanghaoshuru=(EditText)findViewById(R.id.zhanghaoshuru);
mimashuru =(EditText)findViewById(R.id.mimashuru);
denglu=(Button)findViewById(R.id.denglu) ;
jizhumima =(CheckBox)findViewById(R.id.jizhumima);

boolean is=pref.getBoolean("data",false);
if( is){
String a=pref.getString("zhanghaoshuru","");
String b =pref.getString("mimashuru","");
zhanghaoshuru.setText(a);
mimashuru.setText(b);
jizhumima.setChecked(true);
}
else{
denglu.setOnClickListener(new View.OnClickListener() {
@SuppressLint("ShowToast")
@Override
public void onClick(View view) {
String a=zhanghaoshuru.getText().toString();
String b=mimashuru.getText().toString();
if(a.trim().equals("admin")&&b.trim().equals("admin")){
editor=pref.edit();
if(jizhumima.isChecked()){
editor.putBoolean("data",true) ;
editor.putString( "zhanghaoshuru" , a );
editor.putString( "mimashuru" , b );
}
else {
editor.putBoolean("data",false) ;
editor.clear();

}editor.apply();


Intent intent=new Intent(MainActivity.this,denglumima.class);
startActivity(intent);


}
}
});
}
}



}
YXTS122 2018-10-01
  • 打赏
  • 举报
回复
登录之后按下返回键不就是退出应用么?那你这样说不就矛盾了,一会儿说不见了,一会儿说又有了,你到底什么意思,不明白
qq_26592385 2018-10-01
  • 打赏
  • 举报
回复
登录之后按下返回键不是退出应用哦,是重新回到登录界面的,在登录界面按下返回键才是退出应用。
qq_26592385 2018-10-01
  • 打赏
  • 举报
回复
登录之后,进入主界面,然后按下返回键,又回到登录界面,这个时候,帐号和密码都不见了,除非结束app的运行,然后重新打开,帐号密码都有,也就是说,打开app是进入登录界面,帐号密码都会存在,但是登录进去之后,,进入主界面,在按back键回到登录界面,这个时候帐号和密码都没有了,这样说能明白了吗?

80,355

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧