MenuItem не показывает волновой эффект на моем устройстве - PullRequest
0 голосов
/ 16 декабря 2018

Я делаю приложение с NavigationView , и у меня возникает проблема, когда я касаюсь MenuItem.В эмуляторе Android он показывает эффект пульсации, но когда я тестирую его на своем устройстве (Samsung Galaxy Note 8), он не отображается:

Android Emulator

Samsung Galaxy Note 8

NavigationView:

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:background="@color/colorBackground"
    app:headerLayout="@layout/nav_header_main"
    app:itemIconTint="@drawable/nav_selected_item"
    app:itemTextColor="@drawable/nav_selected_item"
    app:menu="@menu/activity_main_drawer" />

nav_selected_item.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true" android:color="@color/colorAccent" />
    <item android:color="@android:color/white" />
</selector>

1 Ответ

0 голосов
/ 16 декабря 2018

Это может быть из-за неправильной конфигурации NavigationView;Я не уверен, что предотвращает волновой эффект на телефоне.Можете ли вы попробовать это и ответить мне в ответ.
Сначала добавьте itemBackground в NavigationView внутри вашего XML-файла со следующим атрибутом:

app:itemBackground="@drawable/ripple_navigation_selector"

Кроме того, затем в папке drawable-v21 добавьте ripple_navigation_selector.xml:

<?xml version="1.0" encoding="utf-8"?> <ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="@color/submit_btn_ripple_color" > <item android:drawable="@color/accentColor" /> <item android:id="@android:id/mask" android:drawable="@android:color/white" /> </ripple>
Так как волновой эффект на устройствах с API 21 или выше.Это может сработать, скажите мне, действительно ли это вам поможет.

...