如何检查EditTexts是否为空?

时间:2014-03-05 14:41:28

标签: java android null android-edittext

如何检查EditTexts是否都为空? 我尝试了很多东西,但没有任何工作。当其中一个EditTexts为空时,我只想要一个Toast说“Data Incomplete”。我自己可以做吐司。请帮助EditText部分。

package com.maverick.mybmi;

import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;



public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    final EditText entermass = (EditText) findViewById(R.id.entermass);
    final EditText enterheight = (EditText) findViewById(R.id.enterheight);
    Button BMI = (Button) findViewById(R.id.BMI);
    BMI.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            double d = 0;
            double mass = Double.valueOf(entermass.getText().toString());           
            double height = Double.valueOf(enterheight.getText().toString());
            double heightF;
            heightF=height*0.3048;
            double bmi = mass/(heightF*heightF);
            d=bmi;
            int display = (int) bmi;

            Toast toast=Toast.makeText(getApplicationContext(), "Your BMI is " +display, Toast.LENGTH_LONG);
            toast.setGravity(Gravity.CENTER_HORIZONTAL, 0, 0);
            toast.show();   
                if(d<15.0)
                {
                    Toast.makeText(MainActivity.this,"You Are Very Severely Underweight", Toast.LENGTH_LONG).show();
                }   
                else if(d>=15.0 && d<=16.0){

                Toast.makeText(MainActivity.this,"You Are Severely Underweight", Toast.LENGTH_LONG).show();
                }
                else if(d>=15.0 && d<=16.0){

                Toast.makeText(MainActivity.this,"You Are Severely Underweight", Toast.LENGTH_LONG).show();
                }
            else if(d>=16.0 && d<=18.5){

                Toast.makeText(MainActivity.this,"You Are Severely Underweight", Toast.LENGTH_LONG).show();
                }
            else if(d>=18.5 && d<=25.0){

                Toast.makeText(MainActivity.this,"You Are Normal (healthy weight)", Toast.LENGTH_LONG).show();
                }
            else if(d>=25.0 && d<=30.0){

                Toast.makeText(MainActivity.this,"You Are Overweight", Toast.LENGTH_LONG).show();
                }
            else if(d>=30.0 && d<=35.0){

                Toast.makeText(MainActivity.this,"You Are Obese Class I (Moderately obese)", Toast.LENGTH_LONG).show();
                }
            else if(d>=35.0 && d<=40.0){

                Toast.makeText(MainActivity.this,"You Are Obese Class II (Severely obese)", Toast.LENGTH_LONG).show();
                }
            else if(d>40.0){

                Toast.makeText(MainActivity.this,"You Are Obese Class III (Very severely obese)", Toast.LENGTH_LONG).show();
                }
        }


    });

};};

2 个答案:

答案 0 :(得分:4)

您可以使用TextUtils.isEmpty。它检查空值和空字符串:

if (TextUtils.isEmpty(entermass.getText().toString())) {
}

答案 1 :(得分:4)

您可以使用getText()方法,然后在其上调用toString()来获取Text。

if(TextUtils.isEmpty(entermass.getText().toString()) || TextUtils.isEmpty(enterheight.getText().toString())){
//enterheight or entermass is empty
}

不要忘记查看TextView API: - )