2014-01-22 25 views
1

所以,我在Android项目这行代码:使用String.isEmpty()与ActionBarSherlock

x.select("p").first().getElementsByTag("img").isEmpty() 

而Eclipse是给我这个错误:“呼叫需要API 9级(当前分钟是8 ):java.lang.String#isEmpty“。

我不认为有什么东西不对的地方,因为我有完全一样的一块几行字下来,Eclipse不说什么。而且,如果我清理错误消失的项目,并且该应用程序运行良好。

但是,如果我改变什么,并保存它,有再来的错误,所以我有干净的了。再次。

我知道有,我可以使用,或者只是改变最小的API 9其他选择,但我想了解(并解决问题)为什么会这样。

+0

嗯,他的方法是'getElementsByTag()'到底是什么?它看起来像[Element](http://developer.android.com/reference/org/w3c/dom/Element.html),但不会返回String(但是NodeList)。 – Jonik

回答

0

您可以使用TextUtils.isEmpty(string)检查一个字符串为null或空。

+0

OP写道:“我知道有其他选择,我可以用[...]但我想明白为什么会这样。” – Jonik

+0

@Jonik我认为这很清楚为什么会发生。 – FWeigl

0

其实String.isEmpty()在API级别9中引入了Android(见here)。在较低的设备上,它实际上会与NoSuchMethodException相撞。

只需使用

String.trim().equals("") 
相关问题