我正在迁移我的代码以使用Actionbarsherlock。我已经完成了所需的所有代码调整,并且我的项目编译良好且没有错误,但是我得到以下异常:
java.lang.NoClassDefFoundError:com.actionbarsherlock.R $ Styleable at com.actionbarsherlock.internal.ActionbarSherlockCompat.generateLayout(ActionbarSherlockCompat.java 1002)
我正在使用actionbar sherlock的4.1版本。每次第一次活动开始时我都会收到此异常。我已经清理并重建了项目,检查了我的构建路径,但找不到丢失的内容。 Anyhelp会很棒!!!
答案 0 :(得分:11)
使用SDK工具预览21 和ADT预览时出现此错误。
使用actionbarsherlock向菜单项充气时发生。 getSupportMenuInflater().inflate(R.menu.search, menu);
恢复SDK工具20修复它。
logcat错误:
11-03 09:29:44.738: E/AndroidRuntime(14878): java.lang.NoClassDefFoundError: com.actionbarsherlock.R$styleable
11-03 09:29:44.738: E/AndroidRuntime(14878): at com.actionbarsherlock.view.MenuInflater$MenuState.readItem(MenuInflater.java:343)
11-03 09:29:44.738: E/AndroidRuntime(14878): at com.actionbarsherlock.view.MenuInflater.parseMenu(MenuInflater.java:162)
11-03 09:29:44.738: E/AndroidRuntime(14878): at com.actionbarsherlock.view.MenuInflater.inflate(MenuInflater.java:112)
答案 1 :(得分:3)
如果您将Eclipse开发环境与ADT插件版本0.9.7或更高版本一起使用,则可以将ActionBarSherlock
作为库项目包含在内。使用库/文件夹作为现有源在Eclipse中创建一个新的Android项目。然后,在项目属性中,将创建的项目添加到“Android”类别的“库”部分下。
用户手册的其余部分为here。
答案 2 :(得分:2)
有同样的问题。更新到最新版本的actionbarsherlock并做了一个干净的帮助我。
答案 3 :(得分:0)
此问题可能是由ADT版本引起的,我使用adt-bundle-windows-x86解决了这个问题。
答案 4 :(得分:0)
签署申请后发生了这件事。已签名的apk返回上述错误,而在签名之前一切运行良好。关闭那该死的日食再次启动它(内置重启选项不起作用)为我做了诀窍。