2014-12-01 13 views
9

Buduję swoją aplikację z Androidem Lollipop SDK (21). Po otwarciu niektórych działań i ich zamknięciu, jedna aktywność ma ten uszkodzony ekran. Wygląda na błąd pamięci, ale dzieje się tak tylko na urządzeniach Lollipop z Androidem. W Logcat nie widzę błędów.Ekran Aktywności Lollipopa Androida jest uszkodzony

Jakieś pomysły, co to jest?

enter image description here

+0

Czy masz przypadkiem widżet 'WebView' (lub' AdView') w swojej aplikacji? Czy sprawdziłeś http://stackoverflow.com/questions/27172217/android-systemui-glitches? – matiash

+0

webView.setLayerType (View.LAYER_TYPE_SOFTWARE, null); rozwiązuje problem. –

Odpowiedz

5

webView.setLayerType (View.LAYER_TYPE_SOFTWARE, null); rozwiązuje problem.

+0

Dziękuję. Spróbuję. – Zenco

+0

Dziękuję, że to zadziałało dla mojej aplikacji korzystającej z WebView. Przeżyłem dokładnie takie samo zepsucie, jak wskazał @Zenco. (Używam Nexusa 5 z programem Lollipop 5.0.1) Dla mnie działa ustawienie LayerType na TYP SOFTWARE. :-) –

1

Należy również zdarzyć na 4,4. Spróbuj zawsze przypisać tło do fragmentu lub aktywności. aktualizacja Ktoś próbował użyć przezroczystego bkg i nie zadziałało.

+0

Czy wiesz, dlaczego tak się dzieje? – Zenco

+0

Nie mam pojęcia, że ​​jest to spowodowane jakimś problemem graficznym w sdk. próbowałeś tego? @Zenco? – TheRedFox

+0

Tak, ale nie mogę tego odtworzyć. Głosuję za twoją odpowiedzią, jeśli ten efekt się nie pojawi. – Zenco

1

Rozwiązanie

webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 

jest OK, ale trochę przesada, ponieważ ten problem dotyczy tylko urządzeń Nexus na 5,0 Lollipop. Po co karać wszystkie modele telefonów?

boolean isLollipop = android.os.Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP; 
boolean isNexus = android.os.Build.MODEL.toLowerCase().contains("nexus"); 

if (isLollipop && isNexus) { 
    webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 
} 

Kod ten zakłada, że ​​Google rozwiąże problem w następnej wersji systemu operacyjnego.

Edit

Począwszy od 5.1 to zostało ustalone, który obsługuje ten kod.

Powiązane problemy