微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Android API 7上使用或解决searchManager.getSearchableInfo()?

我无法在任何地方找到如何使用searchManager.getSearchableInfo()支持v7 appcompat库.
@Override
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);
    MenuItem menuItem = (MenuItem) menu.findItem(R.id.search_widget);
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(menuItem);
    searchView.setSubmitButtonEnabled(true);
    SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    searchView.setSearchableInfo( searchManager.getSearchableInfo(getComponentName()));
    return true;
}

这是我得到的:

Call requires API level 8 (current min is 7): android.app.SearchManager#getSearchableInfo   MainActivity.java   /MyApp/src/com/aat  line 113    Android Lint Problem

如果我用@TargetApi忽略错误,我得到这个:

11-21 22:14:48.108: E/AndroidRuntime(2387): java.lang.NoSuchMethodError: android.app.SearchManager.getSearchableInfo

有帮助吗?

解决方法

您是否尝试过使用SearchViewCompat for API 7的actionBarShelock?

Best alternative for SearchView for Android api level 7 and up?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐