给大家 分享 一个 完美的 登录 和 注册
登录 Activity
public class LoginActivity extends AppCompatActivity implements ITotalContract.ITotalView {
private boolean isHideFirst = true;// 输入框密码是否是隐藏的,默认为true
@BindView(R.id.et_nameText)
EditText etNameText;
@BindView(R.id.et_passwordText)
EditText etPasswordText;
@BindView(R.id.check_Remember)
CheckBox checkRemember;
@BindView(R.id.text_Register)
TextView textRegister;
@BindView(R.id.btn_loginbuton)
Button btnLoginbuton;
@BindView(R.id.image_eye)
ImageView imageEye;
private TotalPreseenter preseenter;
private String nameText;
private String passText;
private SharedPreferences sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
ButterKnife.bind(this);
//创建P层
preseenter = new TotalPreseenter();
preseenter.attachView(this);
//获取sp
sp = getSharedPreferences("login", MODE_PRIVATE);
checkRemember.setChecked(sp.getBoolean("记住", false));
etNameText.setText(sp.getString("edit1", ""));
etPasswordText.setText(sp.getString("edit2", ""));
//数据回显
Intent data = getIntent();
if (data.getBooleanExtra("key", false)) {
String nameString = data.getStringExtra("name");
String pwdString = data.getStringExtra("pwd");
// 给输入框赋值
etNameText.setText(nameString);
etPasswordText.setText(pwdString);
}
}
@OnClick({R.id.text_Register, R.id.btn_loginbuton})
public void onViewClicked(View view) {
switch (view.getId()) {
//点击注册跳转注册界面
case R.id.text_Register:
startActivity(new Intent(LoginActivity.this, RegisterActivity.class));
break;
//点击登录按钮 请求接口
case R.id.btn_loginbuton:
//获取用户名,密码
nameText = etNameText.getText().toString();
passText = etPasswordText.getText().toString();
SharedPreferences.Editor edit = sp.edit();
if (checkRemember.isChecked()) {
edit.putBoolean("记住", checkRemember.isChecked());
edit.putString("edit1", nameText);
edit.putString("edit2", passText);
}
edit.commit();
preseenter.requestLoginData(nameText, passText);
break;
}
}
//登录方法
@Override
public void showLoginData(final String responseData) {
runOnUiThread(new Runnable() {
@Override
public void run() {
Gson gson = new Gson();
LoginBean loginBean = gson.fromJson(responseData, LoginBean.class);
String status = loginBean.getStatus();
if (status.equals("0000")) {
startActivity(new Intent(LoginActivity.this, FragActivity.class));
Toast.makeText(LoginActivity.this, "" + loginBean.getMessage(), Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(LoginActivity.this, "账号或密码错误", Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
//解绑销毁
protected void onDestroy() {
super.onDestroy();
preseenter.detachView(this);
}
//点击查看密码
@OnClick(R.id.image_eye)
public void onViewClicked() {
if (isHideFirst == true) {
imageEye.setImageResource(R.mipmap.login_icon_eye_n_hdhpi);
//密文
HideReturnsTransformationMethod method1 = HideReturnsTransformationMethod.getInstance();
etPasswordText.setTransformationMethod(metho