我尝试做一个导航条并在片段之间移动我使用这个方法在片段之间移动:
private fun setFragment(fragment: Fragment) =
supportFragmentManager.beginTransaction().apply {
replace(R.id.flcontainer,fragment)
addToBackStack(null)
commit()
}
这里我试着在Listener上设置一个中间栏:
val fragmenthome = Home_Page_Fragment()
val fragmentaccount = Account_Page_fragment()
val fragmentwallet = wallet_page_fragment()
val fragappointment = Appointment_Page_Fragment()
NavigationBarView.OnItemSelectedListener{
when(it.itemId){
R.id.mihome -> setFragment(fragmenthome)
R.id.miappointment -> setFragment(fragappointment)
R.id.miwallet -> setFragment(fragmentwallet)
R.id.miaccount -> setFragment(fragmentaccount)
}
true
}
}
现在我的程序将只显示HomeFragment,而不会移动到其他片段
下面是我菜单文件:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/mihome"
android:icon="@drawable/baseline_home_24"
android:title="home" />
<item
android:id="@+id/miwallet"
android:icon="@drawable/baseline_account_balance_wallet_24"
android:title="wallet" />
<item
android:id="@+id/miaccount"
android:icon="@drawable/baseline_account_circle_24"
android:title="account" />
<item
android:id="@+id/miappointment"
android:icon="@drawable/baseline_calendar_month_24"
android:title="appointment" />
</menu>
我尝试使用导航栏在碎片之间移动,但不起作用
1条答案
按热度按时间vlju58qv1#
您可以使用Jetpack导航组件来新建BottomNavigationView。
以下是您的设置方法:
1.创建一个nav_graph并添加所有四个片段作为目的地。你不需要创建它们之间的方向,因为它们将通过底部导航连接起来。
1.在Activity中添加
com.google.android.material.bottomnavigation.BottomNavigationView
,托管您的主机片段并设置set菜单项。您的代码如下所示:1.在
activity.kt
内部,在onCreate()
中添加以下代码,以设置接受BottomNavigationBar中setOf片段的AppBarConfiguration。您可以使用此视频作为参考:https://www.youtube.com/watch?v=Chso6xrJ6aU&list=PLSrm9z4zp4mHilvsfUM3jeCYFV3fTAS3J&index=4
希望能有所帮助!