java - 所有屏幕上的导航视图按钮并刷新主页
问题描述
我正在创建一个添加了 Botton Navigation View 的应用程序,但我不知道它是否以任何方式出现在所有 Activity 中,或者相反,我必须在每个 Activity 中指定它以出现,以及在每个屏幕上添加其所有功能,因为最后一个选项我觉得有点麻烦。
另一个问题是这个栏的主页按钮,我添加了一个主页按钮,每次我脉冲时返回主活动,就像我所做的那样,使用一个进入该屏幕本身的 Intent,但我不知道是否有另一种方法:
bottomNavigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.btnHome:
Intent intent = new Intent(MainActivity.this, MainActivity.class);
startActivity(intent);
break;
解决方案
查看如何Fragment
在 Android 中使用。您不必每次BottomNavigationView
单击按钮时都打开新活动,而是使用片段,因此仅更改活动中的选定部分。查看以下教程以了解有关 Fragments 的更多信息。参见片段的“动态创建”。
在您的情况下,将有FragmentTransaction
您在哪里启动新Activity
using的代码Intent
。您将只替换屏幕的特定部分(在您的Toolbar
和 `BottomNavigationView 之间)。
推荐阅读
- javascript - 正则表达式匹配单个字符的第一次出现
- python - 如何使用 python 在 HTML 文件中打印嵌套列表?
- java - 在 JPA 存储库中创建语句
- python - 为预订进行 Django 表单验证
- pandas - Seaborn FacetGrid 'hue' 改变了条数
- python-3.x - 如何理解具有布尔类型的 Python Numpy 函数 argmin() 和 argmax()
- r - str_c 的条件列值?
- python - min(iterable, *[, key, default]) 返回什么
- javascript - 使用 Firestore 显示徽章通知
- python-3.x - 如何总结networkx图的边权重?