31

Po aktualizacji elementów recyclerview v23.2.0 mają dziwne działanie: bardzo duże z pustym miejscem. Po aktualizacji biblioteki projektu ikona przepełnienia menu 23.2.0 stała się czarna (aplikacja ma ciemny pasek akcji).Przeglądarka systemu operacyjnego Android v.23.2.0 i biblioteka projektowania v.23.2.0 są uszkodzone

UPDATE Na moim Nexus 5 ikon przepełnienia & recyklera widzenia rzędu są stałe, ale na Galaxy Tab 4 przelewowym ikona nadal jest czarny.

UPDATE 2 Jeśli masz problemy z pustym odstępu, ustalić parametry układu dla swoich poglądów (match_parent -> wrap_content), powodują RecyclerView będzie teraz sam rozmiar na podstawie wielkości jego zawartości. Przeczytaj ten blog http://android-developers.blogspot.am/2016/02/android-support-library-232.html

Widget RecyclerView zapewnia zaawansowaną i elastyczną bazę do tworzenia list i sieci, a także wspieranie animacji. Ta wersja wprowadza ekscytującą nową funkcję do interfejsu API LayoutManager: auto-pomiar! Pozwala to na zmianę rozmiaru samego RecyclerView w oparciu o rozmiar jego zawartości. Oznacza to, że możliwe są już wcześniej niedostępne scenariusze, takie jak użycie WRAP_CONTENT dla wymiaru RecyclerView. Znajdziesz wszystkie wbudowane w LayoutManagers teraz obsługują auto-pomiar.

Z powodu tej zmiany należy dokładnie sprawdzić parametry układu widoki elementów: uprzednio zignorowane parametry układu (takie jak MATCH_PARENT w kierunku przewijania) będą teraz w pełni przestrzegane.

UPDATE 3 Link do problemu, który opisuje problem z czarnych ikon w akcji Bar Issue 201918

UPDATE 4 Zobacz moją odpowiedź pod postu, ikony problemem jest również rozwiązany

+0

Zmień plik xml adaptera. – MathaN

+0

dodaj trochę ekranu, wyjaśnij dobrze, ponieważ jego działanie przebiegło zgodnie z oczekiwaniami, pod koniec –

+0

Aktualizacja aktualizacji Plz v4 i appcompat do 23.2. –

Odpowiedz

20

Powód uzyskiwania dużych otwartych przestrzeni wynika z funkcji match_parent. To nie działało poprawnie wcześniej, ale teraz z nowym wydaniem działa inaczej. Trzeba tylko zaktualizować do wrap_content zamiast match_parent, ponieważ powoduje to, że układ dopasowuje się do rodzica, dając duże spacje.

Widżet RecyclerView zapewnia zaawansowaną i elastyczną podstawę do tworzenia list i siatki oraz wspierających animacji. Ta wersja wprowadza ekscytującą nową funkcję do interfejsu API LayoutManager: auto-pomiar! Pozwala to na zmianę rozmiaru samego RecyclerView w oparciu o rozmiar jego zawartości. Oznacza to, że możliwe są już wcześniej niedostępne scenariusze, takie jak użycie WRAP_CONTENT dla wymiaru RecyclerView. Znajdziesz wszystkie wbudowane w LayoutManagers teraz obsługują auto-pomiar.

http://android-developers.blogspot.co.uk/2016/02/android-support-library-232.html

+1

Dzięki za informacje, już to naprawiłem. Zobacz mój komentarz pod oryginalnym pytaniem :) –

+0

Naprawdę mam nowy problem z recyclerviews wewnątrz układów swiperefresh. Przewijanie w górę nie jest możliwe, ponieważ próbuje odświeżyć. Zabawa aktualizacji bibliotek pomocniczych:/ –

+0

To wygląda na błąd: https://code.google.com/p/android/issues/detail?id=201775 –

1

Wydaje się, że dwa nowe biblioteki, wsparcie-vector-odkształcalne i wsparcie-animowane-vector-odkształcalne są wymagane, ponieważ AppCompat-v7 używa kanału alfa wektor (Issue discussion). Po prostu zaktualizuj swój build.gradle, dodając obsługę wektorów i , problem z czarnymi ikonami zostanie rozwiązany.

build.gradle

Dodaj następujące linie do swojego budowania Gradle bazy na Gradle wersji wtyczki

// Gradle Plugin 2.0+

android { 
    defaultConfig { 
    vectorDrawables.useSupportLibrary = true 
    } 
} 

// Gradle Plugin 1.5

android { 
    defaultConfig { 
    generatedDensities = [] 
    } 

    // This is handled for you by the 2.0+ Gradle Plugin 
    aaptOptions { 
    additionalParameters "--no-version-vectors" 
    } 
} 

AKTUALIZACJA W przypadku użytkowników AppCompat flagi umożliwiające odblokowywanie wektorów pomocniczych opisanych w 23.2 blog post nie są już wymagane do korzystania z AppCompat 23.2.1. Jednak możesz nadal korzystać z atrybutu srcCompat: jeśli chcesz używać rysunków wektorowych do wsparcia dla własnych zasobów.

Powiązane problemy