添加输入验证后无法解析变量

时间:2013-11-24 17:33:26

标签: android validation if-statement

我添加了一个简单的if语句来检查用户输入的值是否大于零,在我将editText输入设置为变量的代码周围。

但是在添加了if子句之后,我得到了这个错误:getoffsetlength cannot be resolved to a variable

这就是我在下面实现输入验证的方法。任何人都可以告诉我这个实现我做错了什么?我在想的是,在添加if子句之后,变量getoffsetLength等已经超出了范围。但是我该如何解决这个问题?

if (offsetLength.getText().length() > 0 ) {
            String getoffsetlength = offsetLength.getText().toString(); 
            }

            if (offsetDepth.getText().length() > 0 ) {
            String getoffsetdepth = offsetDepth.getText().toString(); 
            }
            if (ductDepth.getText().length() > 0 ) {
            String getductdepth = ductDepth.getText().toString(); 
            }
            double tri1,tri2;
            //double marking1,marking2,marking3;

            //error here on all three variables
            double off1 = Double.parseDouble(getoffsetlength);
            double off2 = Double.parseDouble(getoffsetdepth);
            double off3 = Double.parseDouble(getductdepth);

1 个答案:

答案 0 :(得分:0)

尝试初始化变量getoffsetlength,getoffsetdepth,getductdepth

String getoffsetlength,getoffsetdepth,getductdepth  = null;
if (offsetLength.getText().length() > 0 ) {
   getoffsetlength = offsetLength.getText().toString(); 
}

if (offsetDepth.getText().length() > 0 ) {
    getoffsetdepth = offsetDepth.getText().toString(); 
}
if (ductDepth.getText().length() > 0 ) {
    getductdepth = ductDepth.getText().toString(); 
}
double tri1,tri2;
//double marking1,marking2,marking3;

// validate whether the variables are not null
if(getoffsetlength != null){
    double off1 = Double.parseDouble(getoffsetlength);
}
if(getoffsetdepth != null){
    double off2 = Double.parseDouble(getoffsetdepth);
}
if(getductdepth != null){
double off3 = Double.parseDouble(getductdepth);
}