SharedPreference的commit中, 不能直接使用sp.edit().commit,需要使用
AlertDialog中实现点击事件,对话框不消失,需要重新设置Click事件SharedPreferences.Editor editor=sp.edit(); editor.putString("username", user_info); editor.putString("password", pass_info); editor.putBoolean("auto",auto.isChecked()); editor.putBoolean("rem",rem.isChecked()); editor.commit();
final AlertDialog dialog1 = new AlertDialog.Builder(UserManagerActivity.this).setTitle("请输入新密码").setView( view) .setPositiveButton("是",null).setNegativeButton("取消",null).create(); dialog1.show(); dialog1.setCanceledOnTouchOutside(false); //设置后点击不会取消对话框,只有dismiss方法可以退出。getButton必修在show之后 dialog1.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (password1.getText().length()<=2||password2.getText().length()<=2) { Toast.makeText(UserManagerActivity.this,"请输入至少三位数密码",Toast.LENGTH_SHORT).show(); return; } if (password1.getText().toString().equals(password2.getText().toString())) { SharedPreferences.Editor editor = sp1.edit(); editor.putString("password", password2.getText().toString()); editor.commit(); password2.setVisibility(View.GONE); password1.setHint("输入当前密码"); } else { Toast.makeText(UserManagerActivity.this, "密码不一致,请重新输入", Toast.LENGTH_SHORT).show(); password1.setText(null); password2.setText(null); return; } dialog1.dismiss(); Toast.makeText(UserManagerActivity.this,"密码已修改",Toast.LENGTH_SHORT).show(); } });
实现软键盘消失操作在XML文件中定义,进入Activity时软键盘消失InputMethodManager imm = (InputMethodManager) UserManagerActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE); if (imm != null) { imm.hideSoftInputFromWindow(userid.getWindowToken(), 0); imm.hideSoftInputFromWindow(phone_number.getWindowToken(), 0); imm.hideSoftInputFromWindow(email.getWindowToken(), 0); }
ss<activity android:name=".activity.meeting_manage.StartMeetingActivity" android:windowSoftInputMode="stateHidden"></activity>
Java中获取string.xml值, getString(R.string.xxx)+"任意字符"