繁体   English   中英

从onClick()传递时无法将值分配给全局变量

[英]Can't assign value to a global variable when passed from onClick()

我正在尝试将数据传递给onClick内部的变量形式。 它返回null。 然后,我将使用该变量将其传递给方法。 我对android编程比较陌生,这困扰了我几个小时。 这是我的代码:

MainActivity.java

    public class MainActivity extends Activity {

 ConnectionClass connectionClass;
 EditText edtuserid,edtpass;
 Button btnlogin;
 ProgressBar pbbar;

 public String name = "";
 String userid;
 String password;

 Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 connectionClass = new ConnectionClass();
 edtuserid = (EditText) findViewById(R.id.edtuserid);
 edtpass = (EditText) findViewById(R.id.edtpass);
 btnlogin = (Button) findViewById(R.id.btnlogin);
 pbbar = (ProgressBar) findViewById(R.id.pbbar);
 pbbar.setVisibility(View.GONE);


btnlogin.setOnClickListener(new View.OnClickListener() {
 @Override
     public void onClick(View v) {
     userid = edtuserid.getText().toString();
     password = edtpass.getText().toString();

     name = userid;


 }
 });
 }

 }

public String getMyData() {

    String test4 = name;
    return test4;

 }
}

尝试使用共享的偏好设置...

btnlogin.setOnClickListener(new View.OnClickListener() {
@Override
 public void onClick(View v) {
 userid = edtuserid.getText().toString();
 password = edtpass.getText().toString();

SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref", MODE_PRIVATE); 
Editor editor = pref.edit();
editor.putString("name_from_main", userid );  // Saving string

// Save the changes in SharedPreferences
editor.commit(); // commit changes


}
});

//在您的片段中使用此

 SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref", MODE_PRIVATE); 
 Editor editor = pref.edit();
String name_from_main = pref.getString("name_from_main", null);   

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM