在samsung s2上测试应用程序时获取资源$ NotFoundException

时间:2016-01-16 23:28:24

标签: android samsung-mobile appbar

我的应用程序正在使用4.1.2的三星S2进行测试,并且它没有任何理由继续崩溃。这个应用程序正在开发其他具有4.2+以上Android版本的手机,并在它们上运行正常,但它在这款手机上崩溃(或者我认为有这个版本)。

这是logcat

FATAL EXCEPTION: main
               android.content.res.Resources$NotFoundException: Resource ID #0x7f0200e8
                   at android.content.res.Resources.getValue(Resources.java:1026)
                   at android.content.res.Resources.getDrawable(Resources.java:671)
                   at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:323)
                   at android.support.v7.widget.TintManager.getDrawable(TintManager.java:147)
                   at android.support.v7.view.menu.MenuItemImpl.getIcon(MenuItemImpl.java:421)
                   at android.support.v7.view.menu.ActionMenuItemView.initialize(ActionMenuItemView.java:114)
                   at android.support.v7.widget.ActionMenuPresenter.bindItemView(ActionMenuPresenter.java:206)
                   at android.support.v7.view.menu.BaseMenuPresenter.getItemView(BaseMenuPresenter.java:182)
                   at android.support.v7.widget.ActionMenuPresenter.getItemView(ActionMenuPresenter.java:192)
                   at android.support.v7.widget.ActionMenuPresenter.flagActionItems(ActionMenuPresenter.java:451)
                   at android.support.v7.view.menu.MenuBuilder.flagActionItems(MenuBuilder.java:1138)
                   at android.support.v7.view.menu.BaseMenuPresenter.updateMenuView(BaseMenuPresenter.java:91)
                   at android.support.v7.widget.ActionMenuPresenter.updateMenuView(ActionMenuPresenter.java:229)
                   at android.support.v7.view.menu.MenuBuilder.dispatchPresenterUpdate(MenuBuilder.java:284)
                   at android.support.v7.view.menu.MenuBuilder.onItemsChanged(MenuBuilder.java:1030)
                   at android.support.v7.view.menu.MenuBuilder.startDispatchingItemsChanged(MenuBuilder.java:1053)
                   at android.support.v7.app.ToolbarActionBar.populateOptionsMenu(ToolbarActionBar.java:449)
                   at android.support.v7.app.ToolbarActionBar$1.run(ToolbarActionBar.java:60)
                   at android.os.Handler.handleCallback(Handler.java:615)
                   at android.os.Handler.dispatchMessage(Handler.java:92)
                   at android.os.Looper.loop(Looper.java:137)
                   at android.app.ActivityThread.main(ActivityThread.java:4921)
                   at java.lang.reflect.Method.invokeNative(Native Method)
                   at java.lang.reflect.Method.invoke(Method.java:511)
                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
                   at dalvik.system.NativeStart.main(Native Method)

1 个答案:

答案 0 :(得分:2)

您在评论中确认的API相关文件夹意味着您尝试访问的资源只能通过文件夹中指示的API级别(或更高级别)访问。因此,如果您在drawables-v17这样的文件夹中拥有要访问的资源,那么这意味着只能通过API 17及更高版本(Android 4.2+)访问drawable。 Android 4.1将无法访问它,因此您将拥有此处显示的NotFoundException。如果您将资源放在与任何API级别无关的文件夹中(即只是drawables),那么它应该没问题。