当使用android studio制作登录页面时..我制作了接收用户年龄的编辑文本,如果他的年龄小于18岁他无法登录,否则他可以,但是当我建立项目时出现此消息;不幸的是(MyAppName)有Stoped ,,,这个代码有什么错误?
cell.newsDetailImageView.image = UIImage()
答案 0 :(得分:4)
在onClick(...)
public void onClick(View view) {
.......
num = Integer.parseInt(txtAge.getText().toString());
if( num <18){
........
}
因为txtAge.getText().toString()
是empty
答案 1 :(得分:0)
看到你的问题很明显。我会解释你的应用程序崩溃的原因。
真正的问题在这里
num = Integer.parseInt(txtAge.getText().toString());
您正在尝试从EditText中获取文本并将其解析为整数。但是你在点击监听器之前这样做了。它应该位于点击监听器的onClick()
方法中。
check.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View view) {
num = Integer.parseInt(txtAge.getText().toString());
if( num <18){
Toast.makeText(MainActivity.this,"Sorry, Your age Must not be less than 18 years old",Toast.LENGTH_LONG).show();
}
else{
Toast.makeText(MainActivity.this,"You can login",Toast.LENGTH_LONG).show();
}
}
}
);
例外必须是NumberFormatException
,因为您尝试将空字符串解析为整数。
只需进行上述更改,您的应用即可正常使用。