Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android中的底部导航仅在双击时才起作用,_Android_Bottomnavigationview - Fatal编程技术网

Android中的底部导航仅在双击时才起作用,

Android中的底部导航仅在双击时才起作用,,android,bottomnavigationview,Android,Bottomnavigationview,创建一个应用程序,并通过设置“On navigation selected listener”来实现底部导航,单击底部导航面板中的图标,我尝试替换片段,片段确实会被替换,但双击会被替换。单击菜单项不起任何作用。 这是我的密码 ''' 类MainActivity:AppCompatActivity(){ override-fun-onCreate(savedInstanceState:Bundle?){ super.onCreate(savedInstanceState) setContentVi

创建一个应用程序,并通过设置“On navigation selected listener”来实现底部导航,单击底部导航面板中的图标,我尝试替换片段,片段确实会被替换,但双击会被替换。单击菜单项不起任何作用。 这是我的密码 '''

类MainActivity:AppCompatActivity(){

override-fun-onCreate(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//val toolbar=app_栏,作为androidx.appcompat.widget.toolbar
//设置支持操作栏(工具栏)
val navigation=findViewById(R.id.nav_视图)作为底部导航视图
navigation.setOnNavigationItemReselectedListener{
何时(it.itemId){
R.id.navigation\u主页->{
var x=supportFragmentManager
变量y=x.beginTransaction()
var fragment=HomeFragment()
y、 替换(R.id.nav_主机_片段,片段)
y、 addToBackStack(“123”)
y、 提交()
}
R.id.navigation\u登录->{
var x=supportFragmentManager
变量y=x.beginTransaction()
var fragment=LoginFragment()
y、 替换(R.id.nav_主机_片段,片段)
y、 addToBackStack(“456”)
y、 提交()
}
R.id.navigation\u noti工厂->{
var x=supportFragmentManager
变量y=x.beginTransaction()
var fragment=NotificationFragment()
y、 替换(R.id.nav_主机_片段,片段)
y、 addToBackStack(“789”)
y、 提交()
}
}
}
var x=supportFragmentManager
变量y=x.beginTransaction()
val fragment=HomeFragment()
y、 添加(R.id.nav_主机_片段,片段)
y、 addToBackStack(空)
y、 提交()
}
}
''”

替换此:

    navigation.setOnNavigationItemReselectedListener {
作者:

替换此项:

    navigation.setOnNavigationItemReselectedListener {
作者:


您正在使用navigation.setOnNavigationItemReselectedListener。它是重新选择项目,然后再选择它。这就是你必须按两次来选择项目的原因。删除此项并设置导航。setOnNavigationItemSelectedListener

您正在使用navigation.setOnNavigationItemReselectedListener。它是重新选择项目,然后再选择它。这就是你必须按两次来选择项目的原因。删除此项并设置导航。setOnNavigationItemSelectedListener我的解决方案是,如果检查不正确,我不采取行动

binding.bottomNav.setOnNavigationItemSelectedListener {
            if (!binding.bottomNav.menu.findItem(it.itemId).isChecked) navController.navigate(it.itemId)
            true

    }

我的解决方案是,如果检查不正确,我就不采取行动

binding.bottomNav.setOnNavigationItemSelectedListener {
            if (!binding.bottomNav.menu.findItem(it.itemId).isChecked) navController.navigate(it.itemId)
            true

    }