首页 > 解决方案 > 使 FrameLayout 匹配根父级

问题描述

在我的“MainActivity.java”中,我有一个 FrameLayout,因此我可以显示可以在菜单中选择的每个片段。

在 FrameLayout 之后,我还有一个与所有菜单相同的底部导航栏。在其中一个菜单“相机”中,我使用库打开相机并隐藏底部导航栏,以便用户可以在“沉浸式模式”中看到相机。

我的问题是,如何在单击“相机”的那一刻将我的片段设置为与“MainActivity”而不是与 FragmentLayout 匹配?

换句话说,有没有办法让 FrameLayout 的高度与“MainActivity”匹配,而不是自定义高度?我不知道我是否清楚,所以这里有一些照片:

这是我的 frameLayout 和所有片段中的底部导航栏

我想在“相机”片段中将 FrameLayout 设置为:

标签: javaandroidxml

解决方案


当你调用启动相机的片段时试试这个:

BottomNavigationView navigation = findViewById(R.id.navigation);
                navigation.setVisibility(View.GONE);

并将其放在启动相机的活动中:

public void onBackPressed() {
Intent intent = new Intent(getApplicationContex(), MainActivity.class);
startActivity(intent);
    BottomNavigationView navigation = findViewById(R.id.navigation);
    navigation.setVisibility(View.VISIBLE);
        super.onBackPressed();
    }

推荐阅读