琢磨了很久
实现系统第一次启动显示欢迎及快速注册界面,注册成功后下次运行实现自动登录。
系统启动后首先进入系统主界面,读取用户名和密码,如果为空则直接跳转到快速注册界面,否则系统正常运行。
快速注册界面实现用户名和密码的读取及保存。
主要通过SharedPreferences实现。
系统运行主界面:
//定义文件
public static final String PREFS_NAME = “MyPrefsFile”;
public static final String USER_NAME = “username”;
public static final String USER_PASSWORD = “userpassowrd”;
private String username;
private String userpassword ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.functionselection);
setTitle(“系统”);
//判断是否为第一次登陆
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
username = settings.getString(USER_NAME, “”); //读取用户名,如果不存在则置空,原本写的是 username = settings.getString(USER_NAME, null);好像效果不太好
userpassword = settings.getString(USER_PASSWORD, “”); //读取密码
if(username.equals(“”)||userpassword.equals(“”)) //不要写成equals(“null”)
{
//第一次登陆 跳转
Intent intent = new Intent(LibFunctionSelect.this,FirstLogin.class); //跳转到注册界面
startActivity(intent);
finish();
}
//否则 程序继续执行,因为用户名密码已经记录到username 和userpassword中,从而实现自动登录
注册界面代码:
// 文件定义
public static final String PREFS_NAME = “MyPrefsFile”; //注意文件名跟上面一致
public static final String USER_NAME = “username”;
public static final String USER_PASSWORD = “userpassowrd”;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
setTitle(“快速注册”);
//获取帐号名和密码
et_password = (EditText) findViewById(R.id.PassoWord);
et_username = (EditText) findViewById(R.id.UserName);
//设置注册监听
private void setBtnOnClickListener(){
button_listener_login = new OnClickListener(){
public void onClick(View v)
{
//获取界面用户名和密码
password = et_password.getText().toString();
username = et_username.getText().toString();
if(checkAccount(username, password))
{
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
//保存用户名和密码,以便下次自动登录
SharedPreferences.Editor editor = settings.edit();
editor.putString(USER_NAME, username);
editor.putString(USER_PASSWORD, password);
editor.commit();//保存
//跳转
Intent intent = new Intent(LibSystemLogin.this,LibFunctionSelect.class); //注册成功,返回主界面
startActivity(intent);
}
}
//用户名密码检验
public boolean checkAccount(String username,String password){
if(username.equals(“”)|| password.equals(“”))
return false;
return true;
}
注意:两个文件名一致
缺省值一致,此处均设置为“ ”
相关资源:陈式太极拳教学软件+注册机1-专业指导文档类资源-CSDN文库
来源:陈立为
声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!