Android 4.4 - Półprzezroczyste paski statusu / nawigacji - fitsSystemWindows / clipToPadding nie działają poprzez transakcje fragmentacji

Podczas korzystania z półprzezroczystego stanu i pasków nawigacji z nowych interfejsów API systemu Android 4.4 KitKat, ustawianiefitsSystemWindows="true" iclipToPadding="false" do aListView działa początkowo.fitsSystemWindows="true" utrzymuje listę pod paskiem akcji i nad paskiem nawigacyjnym,clipToPadding="false" umożliwia przewijanie listy pod przezroczystym paskiem nawigacyjnym i powoduje, że ostatni element na liście przewija się w górę na tyle daleko, aby przejść przez pasek nawigacji.

Jednak po zastąpieniu treści innymFragment przez aFragmentTransaction efektfitsSystemWindows odchodzi, a fragment przechodzi pod pasek akcji i pasek nawigacji.

Mam przykład kodu źródłowego kodu źródłowego demo wraz z APK do pobrania jako przykład:https://github.com/afollestad/kitkat-transparency-demo. Aby zobaczyć, o czym mówię, otwórz aplikację demonstracyjną na urządzeniu z uruchomionym programem KitKat, stuknij element na liście (który otworzy kolejne działanie) i stuknij element w nowej aktywności, która się otworzy. Fragment, który zastępuje zawartość, znajduje się pod paskiem akcji, a clipToPadding nie działa poprawnie (pasek nawigacji pokrywa ostatni element na liście po przewinięciu do końca).

Jakieś pomysły? Czy potrzebne są jakiekolwiek wyjaśnienia? Wysłałem zrzuty ekranowe z mojej i mojej osobistej aplikacji opracowane dla mojego pracodawcy.

questionAnswers(8)

yourAnswerToTheQuestion