

请问这个怎么回事呀?就是我做了一个登录界面,可以跳出来模拟器,但是页面出不来,就是闪退了呢?
关注让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言这个问题可能有多种原因导致,需要逐步排查。
public class LoginActivity extends AppCompatActivity {
private EditText etUsername;
private EditText etPassword;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
etUsername = findViewById(R.id.et_username);
etPassword = findViewById(R.id.et_password);
findViewById(R.id.btn_login).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = etUsername.getText().toString();
String password = etPassword.getText().toString();
if (username.isEmpty() || password.isEmpty()) { // 防止空指针异常
Toast.makeText(LoginActivity.this, "用户名或密码不能为空", Toast.LENGTH_SHORT).show();
} else {
// TODO: 登录逻辑
}
}
});
}
}
在以上示例代码中,我们使用了 findViewById() 方法获取 EditText 控件,并在点击登录按钮时进行了空指针检查,避免了空指针异常的出现。