Android - Сбой в setContentView () до API v24 - PullRequest
0 голосов
/ 07 декабря 2018

Когда я запускаю свое приложение на эмуляторе с API версии 27 и 28, у меня все работает.Однако, как только я пытаюсь перейти на API более низкого уровня, я получаю сообщения об ошибках, касающиеся метода setContentView () в моем пользовательском классе Activity.java.

Вот трассировка стека:

2018-12-06 15:37:59.166 9426-9426/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.mplexvr.ribbonracker, PID: 9426
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mplexvr.ribbonracker/com.mplexvr.ribbonracker.RibbonRackerActivity}: android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0000
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
    at android.app.ActivityThread.-wrap12(ActivityThread.java)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:154)
    at android.app.ActivityThread.main(ActivityThread.java:6077)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
 Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0000
    at android.content.res.ResourcesImpl.getValue(ResourcesImpl.java:190)
    at android.content.res.Resources.getDrawable(Resources.java:766)
    at android.content.Context.getDrawable(Context.java:525)
    at com.android.internal.widget.ToolbarWidgetWrapper.setIcon(ToolbarWidgetWrapper.java:322)
    at com.android.internal.widget.ActionBarOverlayLayout.setIcon(ActionBarOverlayLayout.java:737)
    at com.android.internal.policy.PhoneWindow.setDefaultIcon(PhoneWindow.java:1737)
    at android.app.Activity.initWindowDecorActionBar(Activity.java:2400)
    at android.app.Activity.setContentView(Activity.java:2415)
    at com.mplexvr.ribbonracker.RibbonRackerActivity.onCreate(RibbonRackerActivity.java:46)
    at android.app.Activity.performCreate(Activity.java:6662)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707) 
    at android.app.ActivityThread.-wrap12(ActivityThread.java) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:154) 
    at android.app.ActivityThread.main(ActivityThread.java:6077) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756) 

Я пытался запустить это приложение как на телефоне, так и на эмуляторе с версией 24 API, но ничего не работает.Мой файл activity_main.xml, который пытается вызвать метод onCreate (), содержит только два фрагмента, которые были изменены в методе onCreate ().Вот фрагмент кода из этого:

/* This code runs perfectly fine on the version 28 and 27 api on the emulator*/
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    images = new ArrayList<>();
    imageNames = new ArrayList<>();

    setContentView(R.layout.activity_main);
    Log.v(TAG, "I got in onCreate");


    //Create the fragment for the ranking and add it to the current view
    // Get references to the TitleFragment and to the QuotesFragment containers
    mRibbonFrameLayout = findViewById(R.id.ribbon_fragment_container);
    mChecklistFrameLayout = findViewById(R.id.checkbox_fragment_container);

    ...
}

Я пытался найти эту проблему, но ничего, что я нашел, не решило эту проблему - по крайней мере, публично.

ОБНОВЛЕНИЕ Решено в течение 5 минут, когда я выяснил, что папка имеет версию 26, что ограничит использование этой версии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...