Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 变量";学生编号“;及;密码";可能没有被初始化?_Android_Variables - Fatal编程技术网

Android 变量";学生编号“;及;密码";可能没有被初始化?

Android 变量";学生编号“;及;密码";可能没有被初始化?,android,variables,Android,Variables,Android Studio表示变量studentNumber和passWord可能尚未初始化。错误显示在这一行上: public class LoginActivity extends AppCompatActivity implements View.OnClickListener { public EditText studentNumber, passWord; //defining AwesomeValidation object public AwesomeValidation a

Android Studio表示变量studentNumber和passWord可能尚未初始化。错误显示在这一行上:

public class LoginActivity extends AppCompatActivity implements View.OnClickListener {

public EditText studentNumber, passWord;
//defining AwesomeValidation object
public AwesomeValidation awesomeValidation;

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

    awesomeValidation = new AwesomeValidation(ValidationStyle.BASIC);
    studentNumber = (EditText) findViewById(R.id.studentNumber);
    passWord = (EditText) findViewById(R.id.passWord);

    awesomeValidation.addValidation(this, R.id.studentNumber, "^[0-9]{9}", R.string.studentnumberError);
    String regexPassword = ".{8,}";
    awesomeValidation.addValidation(this, R.id.passWord, regexPassword, R.string.invalid_password);

    signIn.setOnClickListener(this);
}

// Triggers when LOGIN Button clicked
@Override
public void onClick(View view) {
    if (view == signIn) {
        checkLogin();
    }
}

public void checkLogin() {

    // Get text from studentNumber and passWord field
    final String studentNumber = studentNumber.getText().toString();
    final String passWord = passWord.getText().toString();

    // Initialize  AsyncLogin() class with studentNumber and password
    new AsyncLogin().execute(studentNumber,passWord);

    }
}

有什么问题吗?这是表格的验证吗?谢谢。

您得到的变量“studentNumber”和“passWord”可能尚未初始化?

因为字符串变量名和编辑文本名都相同,所以它们相互冲突

只需更改字符串变量名

用这个

final String studentNumber = studentNumber.getText().toString();
final String passWord = passWord.getText().toString();
而不是这个

final String studentNumber2 = studentNumber.getText().toString();
final String passWord2 = passWord.getText().toString();

您得到的变量“studentNumber”和“passWord”可能没有初始化?

因为字符串变量名和编辑文本名都相同,所以它们相互冲突

只需更改字符串变量名

用这个

final String studentNumber = studentNumber.getText().toString();
final String passWord = passWord.getText().toString();
而不是这个

final String studentNumber2 = studentNumber.getText().toString();
final String passWord2 = passWord.getText().toString();

在onClick方法中更改字符串变量名,它与edittext变量名冲突:

final String studentNumber = studentNumber.getText().toString();
final String passWord = passWord.getText().toString();

在onClick方法中更改字符串变量名,它与edittext变量名冲突:

final String studentNumber = studentNumber.getText().toString();
final String passWord = passWord.getText().toString();

由于字符串名和edittext名都是示例,因此出现错误。请像这样更改您的方法

public void checkLogin() {

// Get text from studentNumber and passWord field
final String studentNumberString = studentNumber.getText().toString();
final String passWordString = passWord.getText().toString();

// Initialize  AsyncLogin() class with studentNumber and password
new AsyncLogin().execute(studentNumberString,passWordString);

}
}

由于字符串名和edittext名都是示例,因此出现错误。请像这样更改您的方法

public void checkLogin() {

// Get text from studentNumber and passWord field
final String studentNumberString = studentNumber.getText().toString();
final String passWordString = passWord.getText().toString();

// Initialize  AsyncLogin() class with studentNumber and password
new AsyncLogin().execute(studentNumberString,passWordString);

}
}

更改字符串的变量名。变量名相互冲突。我也给出了答案。请参考它。更改字符串的变量名。变量名相互冲突。我也给出了答案。请参考。您也可以直接将其作为方法参数传递,因为将其存储在最终字段中没有任何值。是的。对的有很多方法可以实现这一点。你也可以直接将其作为方法参数传递,因为将它们存储在最终字段中没有任何价值。是的。对的有很多方法可以做到这一点。