ps:没有使用数据库
学会在xml界面 设置click方法(写自己希望的名字)。
设置步骤:在界面设置方法——》
public void login(View view) { Toast.makeText(this,"login", Toast.LENGTH_SHORT).show(); }
再利用这个方法 验证弹出吐司。
所写代码如下
public class MainActivity extends AppCompatActivity {
private EditText et_qqnumber;
private EditText et_passwd;
private CheckBox cb_remember;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_qqnumber = (EditText) findViewById(R.id.et_qqnumber);
et_passwd = (EditText) findViewById(R.id.et_passwd);
cb_remember = (CheckBox) findViewById(R.id.cb_remember);
restoreInfo();
}
/**
* 根据原来保存的文件信息,把QQ号码和密码信息显示到界面
* getFilesDir 获取的是/data/data/包名/files/路径作为父目录
*/
private void restoreInfo() {
File file = new File(this.getFilesDir(), "info.txt");
// 如果文件存在并且有内容就读取出来
if (file.exists() && file.length() > 0) {
try {
FileInputStream fis = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String info = br.readLine();
String qq = info.split("##")[0];
String pwd = info.split("##")[1];
et_qqnumber.setText(qq);
et_passwd.setText(pwd);
} catch (Exception e) {
e.printStackTrace();
}
}
}
/**
* 登录按钮的点击事件
*
* @param view
*/
public void login(View view) {
String qq = et_qqnumber.getText().toString().trim();
String password = et_passwd.getText().toString().trim();
if (TextUtils.isEmpty(qq) || TextUtils.isEmpty(password)) {
Toast.makeText(this,"用户名和密码不能为空", Toast.LENGTH_SHORT).show();
return;
} else {
// 判断是否需要记录用户名和密码
if (cb_remember.isChecked()) {
// 被选中状态,需要记录用户名和密码
try {
File file = new File(this.getFilesDir(), "info.txt");
FileOutputStream fos = new FileOutputStream(file);
String info = qq + "##" + password;
fos.write(info.getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// 登录操作,模拟登录,数据应该提交给服务器比较是否正确
if ("10000".equals(qq) && "123456".equals(password)) {
Toast.makeText(this,"登录成功", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this,"登录失败", Toast.LENGTH_SHORT).show();
}
}
}
}