Android实现导航

时间:2016-05-02 08:18:29

标签: android navigation

我正在尝试学习Android开发,并且偶然发现了以下我无法解决的问题。

我已经通过Gradle将Bottom Bar Navigation导入到我的应用中,并设法根据说明进行设置。这就是我的屏幕现在的样子。

enter image description here

正如您所看到的,我在底部有三个标签,我正在尝试用于导航。但问题是,即使我知道如何检测通过以下方式点击了哪个元素:

    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(如果我错了,请更正我),但我不太清楚如何处理这个问题。

在这个问题上的任何帮助 - 转换观点,都会受到赞赏。

1 个答案:

答案 0 :(得分:0)

为每个底部标签使用片段(3个视图的3个片段)。在Activity中有一个容器布局(可能是FrameLayout)。每个片段将具有不同的布局。根据用户在底栏上轻敲的内容替换片段。