EditText.getText() 可以为 null 吗?

Ren*_*ies 5 android nullpointerexception android-edittext

我正在使用TextInputLayoutTextInputEditTextAndroid Lint 总是警告我调用toString()可能getText()会产生NullPointerException.

就我个人而言,我从来没有遇到过 NPE 这样做过,即使是在TextInputEditText空的时候也是如此。

我记得读到返回值只能null在创建视图或类似的地方时出现。

简单地忽略 Lint 警告是否安全,还是应该检查以防null万一?

Laj*_*pad 2

可编辑的是一个interface. 您使用的实现可能interface不能null,但即使我们实际上知道在您的用例中不处理 NPE 是安全的,我也会建议您不要这样做。正在使用的该接口的实现可能具有 null 作为值。如果问题是您一遍又一遍地重复此操作,您可以实现一个 util 方法来解决此问题。

编辑

正如 Ryan M 在评论部分中指出的那样,并且文档也证实了这一点,Editable 没有 getText 方法,但是,这并没有改变分离我们关注点的总体想法。

  • 这个答案有一个问题......“Editable”没有“getText”方法。 (2认同)