我使用片段进行底部导航。
我已经用父主题 Theme.MaterialComponents.NoActionBar.Bridge 定义了一个主题。
它在 activities 上运行良好,但 fragments 显示出差距。
这是BottomNavigationActivity
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
firebaseAnalytics = FirebaseAnalytics.getInstance(this)
val user = userFromIntent
initGoogleSignInClient()
binding = ActivityBottomNavigationMenuBinding.inflate(layoutInflater)
setContentView(binding.root)
val navView: BottomNavigationView = binding.navView
val navController = findNavController(R.id.nav_host_fragment_activity_main)
// Passing each menu ID as a set of Ids because each
// menu should be considered as top level destinations.
val appBarConfiguration = AppBarConfiguration(
setOf(
R.id.navigation_home, R.id.navigation_activities, R.id.navigation_more
)
)
navView.setupWithNavController(navController)
}
摘自 MoreFragment。
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?
): View {
fragmentMoreBinding = FragmentMoreBinding.inflate(inflater, container, false)
有什么想法吗?我尝试过类似的事情:
((AppCompatActivity) getActivity()).getSupportActionBar().hide();
删除了 XML 上的 android:paddingTop="?attr/actionBarSize 我有 nav_host_fragment_activity_main 并且它有效!