Je ne parviens pas à configurer le composant de navigation avec com.google.Android.material.bottomnavigation.BottomNavigationView il donne une erreur.
Voici le code que j'essaie d'utiliser
// Setup bottom navigation view
NavigationUI.setupWithNavController(
bottom_navigation_view,
findNavController(R.id.main_nav_Host_fragment)
)
lorsque j'ouvre la classe NavigationUI , je constate qu'elle accepte simplement l'ancienne Android.support.design.widget. BottomNavigationView mais je veux utiliser la nouvelle classe com.google.Android.material.bottomnavigation.BottomNavigationView . Une idée à ce sujet?
J'utilise ces bibliothèques
implementation 'androidx.appcompat:appcompat:1.0.0-beta01'
// Architecture Components
def nav_version = "1.0.0-alpha02"
implementation "Android.Arch.navigation:navigation-fragment-ktx:$nav_version"
// use -ktx for Kotlin
implementation "Android.Arch.navigation:navigation-ui-ktx:$nav_version"
et c'est mon activité
NavigationUI.setupWithNavController(bottomNavView,
Navigation.findNavController(this, R.id.nav_Host_fragment))
et c'est ma disposition
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
tools:context=".ui.main.ActivityMain">
<fragment
Android:id="@+id/nav_Host_fragment"
Android:name="androidx.navigation.fragment.NavHostFragment"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/nav_graph" />
<com.google.Android.material.bottomnavigation.BottomNavigationView
Android:id="@+id/bottomNavView"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_gravity="bottom"
app:menu="@menu/menu_nav_drawer" />
<com.google.Android.material.floatingactionbutton.FloatingActionButton
style="@style/Widget.MaterialComponents.FloatingActionButton"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_gravity="bottom|end"
Android:layout_marginEnd="@dimen/dimen_16"
Android:layout_marginBottom="72dp"
app:fabSize="normal"
tools:srcCompat="@drawable/ic_add_white" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
Veuillez mettre à jour "Android.Arch.navigation: navigation-ui: 1.0.0-alpha03" pour résoudre ce problème
En regardant la documentation de navigation: https://developer.Android.com/topic/libraries/architecture/adding-components#navigation au 29 juin 2018.
Ça dit:
Les classes de navigation Blockquote sont déjà dans le package androidx.navigation, mais dépendent actuellement de la bibliothèque de support 27.1.1 et des versions des composants Arch associées. La version de Navigation avec les dépendances AndroidX sera publiée à l'avenir.
Je suppose que pour le moment, vous n'avez pas d'autre choix que d'attendre une "future" version du package Navigation.
Pour le moment, comme suggéré par @Levi Albuquerque, vous devez utiliser com.Android.support:design:28.0.0-alpha3
.
Cela devrait fonctionner de la même manière com.google.Android.material:material:1.0.0-alpha3
Est-ce que.