2014-10-19 27 views
11

Hallo, ich habe ein Problem mit der neuen Android Lollipop RecyclerViewAndroid RecyclerView Layout Exception

Es hält mit folgenden Ausnahme abstürzt:

Attempt to invoke virtual method 'void android.support.v7.widget.RecyclerView$LayoutManager.onMeasure(android.support.v7.widget.RecyclerView$Recycler, android.support.v7.widget.RecyclerView$State, int, int)' on a null object reference 

Voll Trace-Stack gefunden Hier

Die Code, der verwendet wird, um die RecyclerView zu initiieren, ist das selbe meistens das selbe wie das Tutorium, aber aus irgendeinem Grund klagt dieses noch. Jede Hilfe würde sehr geschätzt werden. gist here und Layout: this gist

Keine der views oder objects sind null

+3

Wenn die Ansicht "Recycler" zur Ansichtsstruktur hinzugefügt wird, muss vor dem Layout ein Layout-Manager vorhanden sein. Zum Zeitpunkt, zu dem der Messaufruf eintrifft, gibt es zum gegebenen Fehlerlog kein Layout-Manager. Vollständige Stack-Trace sollte zeigen, wo das Problem liegt. – yigit

+0

Die Stack-Trace finden Sie hier: http: /crashes.to/s/68cfe49fbd4. Aber soweit ich das sehen kann, gibt es absolut keinen Hinweis auf meinen Code in der Stack-Spur. –

+1

Hmm das ist interessant. Ich kann nicht sehen, warum der Layout-Manager fehlt. Wenn Sie eine Beispiel-App senden können, die das Problem über den öffentlichen Bug-Tracker oder hier reproduziert, werde ich gerne schauen. Btw, sollte nicht mit diesem Absturz in Verbindung stehen, aber LinearLayoutManager unterstützt noch keinen Wrap-Inhalt. Außerdem können Sie den Inhalt des Umbruchs nicht festlegen und setHasFixedSize (true) festlegen. – yigit

Antwort

11

den folgenden Code hinzufügen:

LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity()); 
    layoutManager.setOrientation(LinearLayoutManager.VERTICAL); 
    recyclerView.setLayoutManager(layoutManager); 

Bevor Zusatz-Adapter

kann der Code abgerufen werden unter :

recyclerView.setAdapter(adapter); 
2

In der Android Api-Ebene 22 wird es den Fehler nicht geben. Stattdessen wird das Layout übersprungen, wenn der Adapter nicht gefunden wird.

Indem die Warnung:

RecyclerView: Kein Adapter angebracht ist; Layout überspringen

Aber Ihre App wird nicht abstürzen und läuft, aber recyclerView wird nicht angezeigt.

+0

Ich hasse diese Änderung, dauert immer 30 Minuten, um herauszufinden, warum die erste RecyclerView in meinem neuen Projekt nicht angezeigt wird @ _ @ – ericn

Verwandte Themen