通过EditText获取用户输入

时间:2015-05-19 06:36:23

标签: java android android-studio

我目前正在开发一个简单的挂起应用程序,这是我在Android开发中的第一次体验。我在接受用户猜测的单词时遇到了一些问题。我当前的方法是让用户在EditText字段中输入他们的猜测,然后按下一个按钮,将其分配给名为userGuess的变量。以下是相关部分:

public void onClick(View view){
    EditText word;
    TextView myTxt = (TextView) findViewById(R.id.display_word);
    word = (EditText) findViewById(R.id.letter_guessed);
    userGuess = word.toString();
    System.out.println(userGuess);
}

但是,当我打印它的值时,我会收到以下信息:

System.out﹕ android.widget.EditText{23b92b5a VFED..CL .F...... 48,1064-213,1188 #7f080042 app:id/letter_guessed}

我相信我的问题在于说出这个词,我不确定我是否采取了正确的方法。

6 个答案:

答案 0 :(得分:2)

只需这样做

public void onClick(View view){
    EditText word;
    TextView myTxt = (TextView) findViewById(R.id.display_word);
    word = (EditText) findViewById(R.id.letter_guessed);
    userGuess = word.getText().toString();
    System.out.println(userGuess);
}

答案 1 :(得分:1)

您应该使用getText()EditText检索文字。

word.getText().toString();

答案 2 :(得分:0)

您应该使用word.getText().toString();

答案 3 :(得分:0)

而不是这段代码:

public void onClick(View view){
    EditText word;
    TextView myTxt = (TextView) findViewById(R.id.display_word);
    word = (EditText) findViewById(R.id.letter_guessed);
    userGuess = word.toString();
    System.out.println(userGuess);
}

尝试使用:

EditText word= (EditText) findViewById(R.id.letter_guessed);
TextView myTxt = (TextView) findViewById(R.id.display_word);
String userGuess;

public void onClick(View view){

    userGuess = word.getText().toString();
    System.out.println(userGuess);
}

答案 4 :(得分:0)

getText()用于从editText输入。

userGuess = word.getText().toString().Trim();

答案 5 :(得分:0)

可以通过代码中的少量更改来解决。尝试:

userGuess = word.getText().toString();