我正在尝试学习Android开发,并且偶然发现了以下我无法解决的问题。
我已经通过Gradle将Bottom Bar Navigation导入到我的应用中,并设法根据说明进行设置。这就是我的屏幕现在的样子。
正如您所看到的,我在底部有三个标签,我正在尝试用于导航。但问题是,即使我知道如何检测通过以下方式点击了哪个元素:
mBottomBar.setItemsFromMenu(R.menu.bottombar_menu, new OnMenuTabClickListener() {
@Override
public void onMenuTabSelected(@IdRes int menuItemId) {
if (menuItemId == R.id.bb_menu_favorites) {
// The user selected item number one.
}
}
@Override
public void onMenuTabReSelected(@IdRes int menuItemId) {
if (menuItemId == R.id.bb_menu_favorites) {
// The user reselected item number one, scroll your content to top.
}
}
});
我不知道如何实际执行导航请求 - 例如当用户移动到不同的标签页时,我想显示我的其他屏幕而不是您当前可以看到的Hello World!
。
我相信为此我需要实际更改我的activity_main.xml
文件,因为它目前看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
...
tools:context="com.example.robert.testproject.MainActivity">
<include layout="@layout/page_import"/>
</RelativeLayout>
这是我结束的地方。就我的理解而言,出于导航目的,我不得不使用Intent
(如果我错了,请更正我),但我不太清楚如何处理这个问题。
在这个问题上的任何帮助 - 转换观点,都会受到赞赏。
答案 0 :(得分:0)
为每个底部标签使用片段(3个视图的3个片段)。在Activity中有一个容器布局(可能是FrameLayout)。每个片段将具有不同的布局。根据用户在底栏上轻敲的内容替换片段。