ActionbarSherlock搜索小部件抛出ClassNotFoundException

时间:2014-08-22 00:38:23

标签: android android-actionbar actionbarsherlock

我有一个使用actionbarSherlock实现的searchView小部件。我的onCreateOptionsMenu看起来像这样:

@Override
    public boolean onCreateOptionsMenu(Menu menu) {

        searchView = new SearchView(getSupportActionBar().getThemedContext());
        searchView.setQueryHint("Search for movies to reco");
        searchView.setOnQueryTextListener(this);
        searchView.setOnSuggestionListener(this);

        menu.add(Menu.NONE, RECO_MENU_ITEM_ID, Menu.NONE, "Search for Something")
            .setIcon(R.drawable.ic_action_search)
            .setActionView(searchView)
            .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);

        menu.findItem(RECO_MENU_ITEM_ID);

        setMenu(menu);

        return true;
    }

由于某种原因,在创建的第一行,它会抛出一个这个例外:

com.talkiesapp fatal error : com.actionbarsherlock.R$layout
java.lang.NoClassDefFoundError: com.actionbarsherlock.R$layout
    at com.actionbarsherlock.widget.SearchView.<init>(SearchView.java:264)
    at com.actionbarsherlock.widget.SearchView.<init>(SearchView.java:252)
    at com.myapp.MainActivity.onCreateOptionsMenu(MainActivity.java:162)

它工作得很早,我可能做了一些导致这种失败的改变。 ActionBarSherlock在我的项目中被用作库。

由于

1 个答案:

答案 0 :(得分:1)

您可以为项目构建一个干净的项目,以重新创建ActionBarSherlock R.class