IndexOutOfBoundsException in TabLayout in Android-Design lib unterstützen

8

Ich benutze android.support.design in all meinen Projekten und heute aktualisierte es zur letzten Version

com.android.support:design:22.2.1

Es war eine schlechte Idee, weil mein Projekt mit

abgestürzt ist %Vor%

Nach einigem Debugging habe ich ein Problem in dieser Methode gefunden:

%Vor%

Aber in der vorherigen Version 22.2.0 von lib lief alles gut:

%Vor%

Wer hat es getan und wer kann dafür bestraft werden?

Bitte helfen Sie mir, Entwickler für Android-Unterstützung Design-Bibliothek zu finden.

    
collosteam 06.08.2015, 17:36
quelle

2 Antworten

2

Ich würde gerne nur dazu kommentieren, aber ich habe nicht den Ruf.

Es sieht so aus, als ob dieses Problem in einer zukünftigen Version nachverfolgt und fixiert wird: Ссылка

    
CFJ90210 06.08.2015, 18:03
quelle
3

Ich vermute, dass Ihr Problem auf Folgendes zurückzuführen ist:

%Vor%

Offenbar mag TabLayout keine leeren Adapter. Das überrascht mich nicht.

Also, rufe setupWithViewPager() nicht sofort an. Wenn Sie Ihren PagerAdapter schließlich aktualisieren, um einen Wert ungleich Null von getCount() zurückzugeben, können Sie setupWithViewPager() aufrufen. Zum zweiten und folgenden Mal, wenn Sie PagerAdapter ändern, rufen Sie nach dem Aufruf von notifyDataSetChanged() auf dem Adapter setTabsFromPagerAdapter() auf, um die Registerkarten so zu aktualisieren, dass sie mit den PagerAdapter Inhalten übereinstimmen. Sie können mit boolean verfolgen, ob Sie setupWithViewPager() oder setTabsFromPagerAdapter() aufrufen müssen.

Sie können gerne eine Feature-Anfrage für TabLayout einreichen, um leere Adapter zu unterstützen.

    
CommonsWare 06.08.2015 17:59
quelle