Android getText().equals()中的更改?

Android getText().equals()中的更改?,android,android-4.4-kitkat,Android,Android 4.4 Kitkat,一周前,我使用了以下代码行: buttonAction.setText("Retry"); buttonAction.getText().equals("Retry") -> true 今天,当我重新编译我的项目时(在SDK+android studio更新之后),我得到: 由于getText()返回一个字符串,这两个函数应该返回相同的值,还是我错了 编辑: 如果我在onCreate方法中调用以下行 buttonAction.setText("Retry"); Syste

一周前,我使用了以下代码行:

buttonAction.setText("Retry");
buttonAction.getText().equals("Retry") -> true
今天,当我重新编译我的项目时(在SDK+android studio更新之后),我得到:

由于
getText()
返回一个
字符串,这两个函数应该返回相同的值,还是我错了

编辑:

如果我在
onCreate
方法中调用以下行

    buttonAction.setText("Retry");
    System.out.println(buttonAction.getText().equals("Retry"));
    System.out.println(buttonAction.getText().getClass().toString());
    System.out.println(buttonAction.getText().toString().equals("Retry"));
它们打印:

    07-08 17:13:12.898  10343-10343/at.test I/System.out﹕ true
    07-08 17:13:12.898  10343-10343/at.test I/System.out﹕ class java.lang.String
    07-08 17:13:12.898  10343-10343/at.test I/System.out﹕ true
    07-08 17:18:34.913  10480-10480/at.test I/System.out﹕ false
    07-08 17:18:34.913  10480-10480/at.test I/System.out﹕ class android.text.SpannableString
    07-08 17:18:34.913  10480-10480/at.test I/System.out﹕ true
如果我在点击按钮操作中调用这些行,它们会打印:

    07-08 17:13:12.898  10343-10343/at.test I/System.out﹕ true
    07-08 17:13:12.898  10343-10343/at.test I/System.out﹕ class java.lang.String
    07-08 17:13:12.898  10343-10343/at.test I/System.out﹕ true
    07-08 17:18:34.913  10480-10480/at.test I/System.out﹕ false
    07-08 17:18:34.913  10480-10480/at.test I/System.out﹕ class android.text.SpannableString
    07-08 17:18:34.913  10480-10480/at.test I/System.out﹕ true

提前谢谢

根据,getText()返回可编辑类型。这就是它返回false的原因,您必须将其转换为字符串才能使其为true。

我认为它返回的是字符序列,而不是实际的字符串。我不是很确定,只是假设一下。文档中说它返回一个字符串,正如您所提到的,但这显然不是真的?嗯,但是由于CharSequence只是一个接口,我认为底层对象应该是我之前设置的字符串。您如何知道getText()返回一个字符串?如果这真的是一个操作按钮,那么参考手册将介绍一些关于文本字段的内容。调用getText()时,TextFields返回编辑器对象。打印buttonAction.getText().getClass().getName()可能在这里有所帮助。它似乎取决于调用此方法的位置。(见更新的问题)谢谢你的回答。它似乎取决于调用此方法的位置(请参见更新的问题)