从android中的EditText字段创建一个数组

时间:2015-08-22 19:26:13

标签: java android arrays android-activity

我需要一个带有用户名和密码的数组。包含数组的方法需要返回它。我尝试了以下代码,但当我尝试从另一种方法访问数组时,android studio正在显示并出错:

public class MainActivity extends Activity {

    private static Boolean log_status;

    public  String[] credentials () {
        String Username;
        String Password;
        String login_data;
        EditText editText = (EditText) findViewById(R.id.username);
        EditText editPass = (EditText) findViewById(R.id.password);
        Username = editText.getText().toString();
        Password = editPass.getText().toString();

        String[] log_data= new  String[1];
        log_data[0]= Username;
        log_data[1]=Password;

        return log_data;

    }   

如何通过其他方法访问log_data数组?我的代码是否返回一个数组?

4 个答案:

答案 0 :(得分:1)

你犯了一些错误,请试试这个。

EditText password,username;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.first);
        password = (EditText)findViewById(R.id.passWord);
        username = (EditText)findViewById(R.id.userName);
    }
    public  String[] LogInfo () {
        String passWord = password.getText().toString();
        String userName = username.getText().toString();

            String[] log_data= new String[2];
            log_data[0] = passWord;
            log_data[1] = userName;

            return log_data;

        }

答案 1 :(得分:0)

如何访问限制为1

的数组的第一个元素
  String[] log_data= new  String[1];
  log_data[0]= Username;
  log_data[1]=Password;

将数组的大小增加到2

  String[] log_data= new  String[2];
  log_data[0]= Username;
  log_data[1]=Password;

答案 2 :(得分:0)

String[] log_data= new String[1];创建一个包含1维的Vector,因此我认为它应该是:String[] log_data= new String[2];

答案 3 :(得分:0)

String[] log_data= new  String[1];
log_data[0]= Username;
log_data[1]=Password;

您的数组大小只有1而不是2。

尝试更改

String[] log_data= new  String[2];

此外,如果它没有解决,你能告诉你确切的错误信息吗?