Gdy robię coś w mojej aplikacji, widzę, że szuflada nawigacji w mojej aplikacji zmniejszyła swój rozmiar. Ale nic na to nie robię.
Następnie, po sprawdzeniu kodu, zauważyłem, że setDrawerListener jest przestarzały. Czy ktoś ma na to rozwiązanie?
drawerLayout.setDrawerListener(actionBarDrawerToggle);
android
drawerlayout
deprecation-warning
David Glorioso
źródło
źródło
Odpowiedzi:
Użyj
addDrawerListener()
zamiast tego.źródło
removeDrawerListener()
więc, żeadd...
ma na imię meczuse 'addDrawerListener' instead
do przestarzałej wiadomości!Zastąpić:
z
źródło
onCreate()
włączysz i obrócisz ekran, cała aktywność zostanie odtworzona i ustawiony zostanie nowy odbiornik. Bardziej złożone przypadki należy traktować z myślą, że (prawdopodobnie) nie ma potrzeby ustawiania więcej niż 1 detektoraDrawerLayout
.Zastąpić
setDrawerListener
z
addDrawerListener
przykład
źródło
Chyba odpowiem na moje pytanie. Najnowsze
navigationView
produkuje ustawienia domyślneandroid:layout_height
prawie w dowolnym18dp
momencie"wrap_content"
. Musisz więc wybrać toandroid:layout_height
, co chcesznavigationView
lub po prostu zrobićandroid:layout_height="match_parent"
.W każdym razie jego wysokość zwiększa się automatycznie po dodaniu elementu do szuflady nawigacji.
Na koniec użyj
addDrawerListener()
zamiastsetDrawerListener()
jak powiedział Luxi Liu.źródło