2014-10-19 6 views
11

Привет У меня возникли проблемы с новым Android Lollipop RecyclerViewAndroid RecyclerView LayoutManager Исключение

It продолжает врезаться за исключением следующего:

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 

Полный трассировки стека можно найти здесь

код, используемый для запуска RecyclerView, является тем же самым, что и учебник, однако по какой-то причине это все еще жалуется. Любая помощь будет принята с благодарностью.

Код можно получить по адресу: gist here и макет: this gist

Ни один из views или objects не являются null

+3

Когда recyclerview добавляется в дерево просмотра, он должен иметь диспетчер компоновки перед его компоновкой. Учитывая журнал ошибок, в момент поступления вызова измерения он еще не имеет менеджера компоновки. Полная трассировка стека должна показать, где проблема. – yigit

+0

Трассировка стека Вы можете найти здесь: http: /crashes.to/s/68cfe49fbd4. Но насколько я вижу, в трассировке стека нет абсолютно никакой ссылки на мой код. –

+1

Хм это интересно. Я не понимаю, почему менеджер компоновки отсутствует. Если вы можете отправить пример приложения, которое воспроизводит проблему через общедоступный трекер ошибок или здесь, я с удовольствием посмотрю. Btw, не должно быть связано с этим сбоем, но LinearLayoutManager еще не поддерживает обертку содержимого. Также вы не можете установить обертку содержимого, а также setHasFixedSize (true). – yigit

ответ

11

Добавьте следующий код:

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

Перед добавления адаптера :

recyclerView.setAdapter(adapter); 
2

На уровне 22-го уровня Api-а это не даст ошибки. Вместо этого он пропускает макет, если адаптер не найден.

Показав предупреждение:

RecyclerView: адаптер не прилагается; пропуская макет

Но ваше приложение не будет разбиваться и бежит, но recyclerView не отображается.

+0

Ненавижу это изменение, мне всегда нужно 30 минут, чтобы узнать, почему первый RecyclerView в моем новом проекте не показывает @ _ @ – ericn

Смежные вопросы