无法从editText获取数据android studio

无法从editText获取数据android studio

问题描述:

我创建了一个登录表单并希望检查用户凭据是正确还是错误。 但在我发现之前,我无法获得字符串变量中的editText值。 所以请帮我存放editText的值。无法从editText获取数据android studio

我的Java代码

private String output; 
private Toolbar toolbar; 
private Button button; 
public EditText Username,Password; 
public String myURL,userValue23,passValue; 

List<DataModel> loginList; 

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

    toolbar = (Toolbar) findViewById(R.id.app_bar); 
    setSupportActionBar(toolbar); 

    Username = (EditText) findViewById(R.id.etUsername); 
    Password = (EditText) findViewById(R.id.etPassword); 

    userValue23 = Username.getText().toString(); 
    passValue = Password.getText().toString(); 

    button = (Button) findViewById(R.id.btn_login); 
    button.setOnClickListener(this); 
} 
@Override 
public void onClick(View v) { 

    if(v.getId()==R.id.btn_login) 
    { 
     if(inOnline()) 
     { 
      if(userValue=="") 
      { 
       Toast.makeText(this, "tees", Toast.LENGTH_LONG).show(); 
      }else{ 
       Toast.makeText(this, userValue+"tees", Toast.LENGTH_LONG).show(); 
      } 
     } 
     else 
     { 
      Toast.makeText(this, "Network isn't available", Toast.LENGTH_LONG).show(); 
     } 
    } 
} 

在XML代码中,我创建的登录表单有两个EDITTEXT的形式,而这些ID是分别etUsername,etPassword,btn_login

 if(inOnline()) 
      { 
       if(userValue=="") 
       { 
        Toast.makeText(this, "tees", Toast.LENGTH_LONG).show(); 
       }else{ 

**您使用值这个名字是userValue但你没有定义它,但你定义它,你定义userValue23 ..修复它并不需要你varibale移动到的onclick功能 **

    Toast.makeText(this, userValue+"tees", Toast.LENGTH_LONG).show(); 
       } 
      } 

把这些

userValue23 = Username.getText().toString(); 
passValue = Password.getText().toString(); 

内onClick方法

public void onClick(View v) { 

if(v.getId()==R.id.btn_login) 
{ 
    userValue23 = Username.getText().toString(); 
    passValue = Password.getText().toString(); 
    if(inOnline()) 
    { 
     if(userValue23=="") 
     { 
      Toast.makeText(this, "tees", Toast.LENGTH_LONG).show(); 
     }else{ 
      Toast.makeText(this, userValue23+"tees", Toast.LENGTH_LONG).show(); 
     } 
    } 
    else 
    { 
     Toast.makeText(this, "Network isn't available", Toast.LENGTH_LONG).show(); 
    } 
} 
} 

您需要这两行

userValue23 = Username.getText().toString(); 
passValue = Password.getText().toString(); 

移动OnClick方法内。否则,他们将永远是空的OnCreate