当我单击一个图标时,除非再次单击它,否则它不会更改颜色,它将转到活动,但只有第一个图标保持突出显示。我必须再次单击它才能更改颜色。我的代码有什么问题?
class ProfileActivity : BaseActivity(){
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_profile)
val navigationBar = findViewById<BottomNavigationView>(R.id.navigation_bar)
navigationBar.setOnNavigationItemSelectedListener(navigation_bar)
}
private val navigation_bar = BottomNavigationView.OnNavigationItemSelectedListener { item ->
when (item.itemId) {
R.id.nav_profile -> {
// startActivity(Intent(this@ProfileActivity, ProfileActivity::class.java))
return@OnNavigationItemSelectedListener true
}
R.id.nav_explore -> {
startActivity(Intent(this@ProfileActivity, ExploreActivity::class.java))
return@OnNavigationItemSelectedListener true
}
R.id.nav_store -> {
startActivity(Intent(this@ProfileActivity, StoreActivity::class.java))
return@OnNavigationItemSelectedListener true
}
R.id.nav_board -> {
startActivity(Intent(this@ProfileActivity, BoardActivity::class.java))
return@OnNavigationItemSelectedListener true
}
}
false
} }
答案 0 :(得分:1)
您正在使用活动。使用片段。我认为它将解决。
答案 1 :(得分:1)
您为每个项目使用不同的活动。
您必须使用以下方法处理活动中的选定项目:
navigationBar.setSelectedItemId(R.id.nav_explore)