Android:BottomNavigationView第一个片段开关超级延迟
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android:BottomNavigationView第一个片段开关超级延迟相关的知识,希望对你有一定的参考价值。
尝试使用底部导航视图,android提供的标准视图。我第一次点击任何片段,它是一个SUPER延迟的UI反应时间(直到波纹,项目选择更新和新片段显示大约2秒)这是我第一次切换到任何片段,之后,它表现为预期。
我在这里已经发现了一个类似的问题,但没有任何建议或答案。 See that post here
在下面找到用户切换片段的逻辑。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
bottom_nav_bar.inflateMenu(R.menu.bottom_nav_bar_menu)
bottom_nav_bar.selectedItemId = R.id.nav_summary
bottom_nav_bar.setOnNavigationItemSelectedListener { menuItem ->
when (menuItem.itemId) {
R.id.nav_1-> startFragment1()
R.id.nav_2 -> startFragment2()
else -> startFragment3()
}
true
}
}
fun startFragment1() = replaceFragment(Fragment1(), "TAG1")
fun startFragment2() = replaceFragment(Fragment2(), "TAG2")
fun startFragment3() = replaceFragment(Fragment3(), "TAG3")
private fun replaceFragment(fragment: Fragment, fragmentTag: String) {
fragmentManager.beginTransaction()
.setCustomAnimations(R.animator.fade_in, R.animator.fade_out)
.replace(R.id.fragment_container, fragment, fragmentTag)
.commit()
}
答案
使用
supportfragmentmanager
而不仅仅是普通的FragmentManager。它更顺畅。当然你必须更改为v4 Fragment的导入,但之后它应该更好。在我做这个转换之前,我发生了各种各样奇怪的事情。
以上是关于Android:BottomNavigationView第一个片段开关超级延迟的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )