Android - EditText保存T9建议值

时间:2013-07-20 19:16:33

标签: android android-edittext

我有一个应用程序,用户在EditText字段中输入文本。用户单击“确定”后(在键盘输入模式下),EditText中的值正确(假设为“Smile”)。

if (answers.get(counter).getText().equals(opponentAnswers.get(counter)))

但是这个if语句失败了,因为相同的EditText具有T9选项建议的值,当用户输入他的答案时(例如EditText的值将是“Smile Smiling Smiled”),而它应该只有一个价值“微笑”。

有任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

这真的很奇怪。这些是猜测,但如果我是你,这就是我接下来会尝试的:

一个。而不是对getText()做一个等号,尝试在getText()上做一个toString,所以:

if (answers.get(counter).getText().toString().equals(opponentAnswers.get(counter)))

B中。如果这不起作用,那么您可以尝试在EditText上使用addTextChangedListener添加TextWatcher,并从中获取值。在afterTextChanged中返回的editable上调用toString()可能会为您提供所需的值。

private class SearchTextWatcher implements TextWatcher {

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count,
            int after) {
    }

    @Override
    public void onTextChanged(CharSequence s, int start, int before,
            int count) {
    }

    @Override
    public void afterTextChanged(Editable s) {
         //Get the text the user sees
         String textShownToUser = s.toString();
    }

}

希望这有帮助!祝你好运!