我们大家肯定都见过带有底部导航栏的应用。一些流行的例子包括 Instagram、WhatsApp 等. 在本文中,让我们来学习如何在 Android 应用中实现这样一个具有实际功能的底部导航栏。
为什么我们需要底部导航栏?
- 它允许用户轻松切换到不同的 Activity/Fragment。
- 它让用户能够清楚地知道应用中有哪些不同的屏幕。
- 用户能够随时查看自己当前正处于哪个屏幕。
以下是底部导航栏的解剖结构图:
!Bottom-Navigation-Bar-in-Android
创建底部导航栏的步骤
步骤 1:创建一个新的 Android Studio 项目
要在 Android Studio 中创建新项目,请参考 如何在 Android Studio 中创建/启动新项目。
步骤 2:添加依赖项到 build.gradle(:app) 文件
我们将使用 Android 的 Material Design 库,因此我们需要在 build.gradle(:app) 文件中导入它 . 这是我们需要添加的依赖项:
implementation("com.google.android.material:material:1.12.0")
步骤 3:编辑 activity_main.xml 文件
对于本示例,我们将创建一个基础应用,其中包含一个 FrameLayout 和一个 底部导航栏 。 FrameLayout 将包含 Fragment ,当用户点击 底部导航栏 中的项目时,Fragment 会随之切换。这就是 activity_main.xml 的样子:
activity_main.xml:
XML
INLINECODEfc568542`INLINECODE40f37b90`
步骤 4:为底部导航栏创建菜单
导航栏需要包含一些项目,我们将使用 Menu 来创建它们。要创建一个 Menu, 首先通过右键点击 res 目录创建一个 Menu Directory(菜单目录) ,选择 New > Android Resource Directory 并在 Resource Type 中选择 Menu。
要创建一个 菜单资源文件,点击 app > res > menu (右键) > New > Menu Resource File 并将其命名为 bottomnavmenu.xml。
现在,用户可以在 bottomnavmenu.xml 文件中根据需要创建任意数量的项目。用户还需要为这些项目各自创建一个图标。要创建图标,请点击 app > res > drawable (右键) > New > Vector Asset.
在打开的窗口中,用户可以将图标命名为任意名称,但 名字中不应包含任何大写字母 。 用户可以通过搜索来选择想要的图标,完成后点击 Next -> Finish.
现在将这些项目添加到 bottomnavmenu.xml 中