当前位置: 首页 > 知识库问答 >
问题:

检查编辑框是否为空[重复]

谢夜洛
2023-03-14

我想做一个计算外它的两位数除法,用户使用编辑框输入两个数字,当用户留下一个编辑文本为空,他git一个错误消息没有粉碎的应用程序,我试图它,但应用程序总是粉碎

public class MainActivity extends AppCompatActivity {
    private EditText a1,a2;
    private Button s;
    private TextView d;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate( savedInstanceState );
        setContentView( R.layout.activity_main );
        a1=findViewById( R.id.editTextTextPersonName );
        a2=findViewById( R.id.editTextTextPersonName2 );
        s=findViewById( R.id.button );
        d=findViewById( R.id.textView );
        s.setOnClickListener( new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                float aa = Float.parseFloat( a1.getText().toString() );
                float ss = Float.parseFloat( a2.getText().toString() );
                float f = aa / ss;
                if(a1.getText().toString()==null){
                    a1.setError( "n1 is required" );
                    a1.requestFocus();
                }else if(a2.getText().toString()==null){
                    a2.setError( "n1 is required" );
                    a2.requestFocus();
                }else {
                    d.setText( (int) f );
                }
            }
        });
    }
}

共有2个答案

毕霖
2023-03-14

如果应用程序崩溃,请检查日志窗口中的错误或异常类型。如果日志窗口显示一些nullPointerException(),则用它们各自的类型键入成员a1,a2,s,d。IE...(EditText),(TextView),(Button)。如果不显示此异常,也要养成习惯,总是对成员进行类型转换,以避免任何麻烦。

If after that also there comes some issue than,make these changes over the code ---------------------------------->
if(TextUtils.isEmpty(a1.getText().toString()))
a1.setError("n1 is required" );
else if(TextUtils.isEmpty(a1.getText().toString())){
                    a2.setError( "n1 is required" );
                    a2.requestFocus();
                }else {
                    d.setText( (int) f );
                }
年光明
2023-03-14

您只需检查编辑文本是否为空。

试试下面的代码

String FirstEdit = a1.getText().toString();
String SecondEdit = a2.getText().toString();

if (TextUtils.isEmpty(FirstEdit) || TextUtils.isEmpty(SecondEdit))
{
//Your Message
}
 类似资料:
  • 我想做一个计算外它的两位数除法,用户使用编辑框输入两个数字,当用户留下一个编辑文本为空,他git一个错误消息没有粉碎的应用程序,我试图它,但应用程序总是粉碎

  • 问题内容: 如何检查给定的输入控件是否为空?我知道该字段上有一个属性,该属性告诉您给定的字段最初是否为空,但是如果有人填充该字段并再次提取整个内容该怎么办? 我认为上述功能是必要的,因为它对告知用户该字段必不可少。 任何想法将不胜感激! 问题答案: 很简单: 您也可以使用代替,如果这对您来说更自然。 更好的替代方法可能是真正利用Angular的形式能力: 在此处更新了Plnkr。

  • 我下面有这些代码,如何检查是否为空? 如果我将,它显示此[] 如何检查数组是否为空,然后显示消息“This is empty”? 我试过了,但效果不好。即使它大于或小于0,也将始终显示“2”

  • 问题内容: 所以我知道这是一个很普遍的问题,已经找到了解决方案。但是,当我尝试这样做时,它无法正常工作。 我的JTextField为空,并且未启用该按钮。当我在文本字段中写入内容时,该按钮未启用。 因此,我的程序应每秒检查一次此字段是否为空。只要有人在文本字段中写入内容,就应启用该按钮。^^ 问题答案: 为此,您需要在中添加更改侦听器(一个响应文本更改的侦听器),并且在内,您需要根据是否为空将其更

  • 问题内容: 有什么最短的方法吗? 如果我是正确的,应该用? 有可能,并且在一行中写(也许是数组?)而不重复? 问题答案: 如果要测试变量是否 确实 是,请使用标识运算符: 如果要检查是否未设置变量: 或者,如果变量不为空,则为空字符串,零,..: 如果要测试变量是否不是空字符串,也将足够: