package com.dayu.pipirrapp.activity; import android.content.Intent; import android.os.Bundle; import android.os.PersistableBundle; import android.text.InputType; import android.util.Log; import android.view.LayoutInflater; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import com.dayu.pipirrapp.R; import com.dayu.pipirrapp.databinding.ActivityLoginBinding; import com.dayu.pipirrapp.observer.LoginObserver; import com.hjq.permissions.OnPermissionCallback; import com.hjq.permissions.Permission; import com.hjq.permissions.XXPermissions; import java.util.List; public class LoginActivity extends BaseActivity { private final String TAG = "LoginActivity"; ActivityLoginBinding binding; private boolean isPasswordVisible = false; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { Log.i(TAG, "onCreate"); super.onCreate(savedInstanceState); binding = ActivityLoginBinding.inflate(LayoutInflater.from(this)); setContentView(binding.getRoot()); getLifecycle().addObserver(new LoginObserver(this)); binding.passwordBtn.setOnClickListener((view) -> { togglePasswordVisibility(); }); binding.loginBtn.setOnClickListener(v -> { Intent intent = new Intent(LoginActivity.this, MainActivity.class); startActivity(intent); this.finish(); }); } private void togglePasswordVisibility() { if (isPasswordVisible) { // 如果密码可见,隐藏密码 binding.password.setInputType( InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); binding.passwordBtn.setImageResource(R.drawable.vt_ps_close); } else { // 如果密码隐藏,显示密码 binding.password.setInputType(InputType.TYPE_CLASS_TEXT); binding.passwordBtn.setImageResource(R.drawable.vt_ps_open); } // 移动光标到末尾 binding.password.setSelection(binding.password.getText().length()); // 切换标志 isPasswordVisible = !isPasswordVisible; } @Override protected void onStart() { super.onStart(); Log.i(TAG, "onStart"); } @Override protected void onResume() { super.onResume(); Log.i(TAG, "onResume"); } @Override protected void onRestart() { super.onRestart(); Log.i(TAG, "onRestart"); } @Override protected void onPause() { super.onPause(); Log.i(TAG, "onPause"); } @Override protected void onStop() { super.onStop(); Log.i(TAG, "onStop"); } @Override protected void onDestroy() { super.onDestroy(); Log.i(TAG, "onDestroy"); } @Override protected void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); Log.i(TAG, "onSaveInstanceState"); } @Override public void onSaveInstanceState(@NonNull Bundle outState, @NonNull PersistableBundle outPersistentState) { super.onSaveInstanceState(outState, outPersistentState); Log.i(TAG, "onSaveInstanceState---outPersistentState"); } @Override protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); } }