【发布时间】:2014-07-03 14:51:35
【问题描述】:
我知道这已经被问过很多次了,但我已经阅读了所有这些并尝试改变很多东西,但没有一个有效。
我正在编写一个仅支持 android 4 及更高版本的应用程序,因此我不需要支持库 v7(虽然以前它已包含在内)。我的代码非常简单:
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
searchView.setOnQueryTextListener(new SearchViewQueryTextListener());
return super.onCreateOptionsMenu(menu);
}
我在第 4 行收到 NullPointerException。 Here 是我的仓库的链接,所以你可以看到任何你想要的东西。我认为我自己,问题在于MainActivity 类或menu.xml 或应用程序清单。
请帮忙,我卡住了。
【问题讨论】:
-
仅此而已,我猜我们将无能为力。为什么不在 searchView == null 上调用方法之前检查它?
-
我已经为我的整个应用添加了链接!正如我所说,第 6 行的 searchView 为空。
-
如果为null,不要在其上调用方法。
-
你说你不需要支持库,那你为什么要使用它?您在 xml 中使用
android.support.v7.widget.SearchView,在代码中使用MenuItemCompat,因此您显然在使用支持库。 -
@darnmason:我已经更正了,仍然出现同样的错误
标签: android searchview