当前位置: 首页 > 知识库问答 >
问题:

更改容器页面点击菜单项

汤跃
2023-03-14

如何在单击Home项目时更改选项卡容器

bottom\u菜单。xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
        android:id="@+id/action_item1"
        android:icon="@drawable/ic_format_list_bulleted_black_24dp"
        android:title="Status"
        android:onClick="go_page('Stat')"/>
</menu>

从tabs.xml

<android.support.design.widget.BottomNavigationView
        android:id="@+id/navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_gravity="bottom"
        android:background="@color/greyish"
        app:itemIconTint="@color/black"
        app:itemTextColor="@color/black"
        app:menu="@menu/bottom_menu"/>

tabs.java

public void go_page(String fragmentId) {
        FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
        Fragment fragment = getSupportFragmentManager().findFragmentByTag(fragmentId);
        if (fragment == null) {
            if (fragmentId.equals("Stat")) {
                fragment = StatTab.newInstance();
            }
            if (fragmentId.equals("Other")) {
                fragment = OtherTab.newInstance();
            }
            ft.replace(R.id.container, fragment, fragmentId).commit();
        }
    }

StatTab片段:

public class StatTab extends Fragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_stat_tab, container, false);
    }
}

无法解析名称newInstance()

谢谢你的任何帮助

共有1个答案

虞华彩
2023-03-14

您需要在您的StatTab和OtherTab中创建新实例()方法,如下面的代码

 public class StatTab extends Fragment {
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {
            return inflater.inflate(R.layout.fragment_stat_tab, container, false);
        }

        public  static StatTab newInstance() {
        return new StatTab();
      }
    }


 public class OtherTab extends Fragment {
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {
            return inflater.inflate(R.layout.fragment_other_tab, container, false);
        }

        public static OtherTab newInstance() {
        return new OtherTab();
      }
    }
 类似资料:
  • 问题内容: 向下滚动页面时,活动菜单项将更改。怎么做? 问题答案: 通过绑定到容器的滚动事件(通常是窗口)来完成。 快速示例:

  • 我是一个新的Appium Java测试。所以,到目前为止,我能够登录android应用程序。 当通过Appium Java代码点击时,android应用程序有一个菜单。与单击对应的屏幕会更新,但页面源XML不会更新。到目前为止,我无法访问页面上的任何内容。 我使用的是APPIUM Java vers 6 Beta 3 Selenium版本3.9.1和Nexus 6p android版本7.1.1。

  • 在测试我的Web应用程序时,我无法单击菜单项(创建缺陷…),如图所示 下面的代码点击图像(手部图像),如图所示 然后菜单打开。现在我想单击菜单项。我正在为此使用下面的代码 但我得到了上面提到的例外。 这是我在网页上的内容: 你能建议一下吗?

  • 菜单 GitBook使用一个SUMMARY.md文件来定义文档的菜单。 SUMMARY.md中[]内的内容是标题,()内是文档的路径,章节和子章节用四个空格或者tab键来分级。 简单示例 # 概述 ### 第一部分 * [第一部分](part1/README.md) * [Writing很牛](part1/README.md#writing) * [GitBook很牛](par

  • Since 9.9 popMenuClick 标题栏右边popMenu点击后触发的事件 使用方法 document.addEventListener('popMenuClick', function(e) { //得到name属性值 console.log(e.data.title); // 这里不是name,是title }, false); 代码演示 基本功能演示 <h1>请点击右上

  • 问题内容: 我正在尝试更改用户在我的网站上选择的活动或当前页面导航链接的颜色。我究竟做错了什么?谢谢。 到目前为止,CSS如下所示: 我的HTML使用include PHP函数调用导航菜单的页面模板: 问题答案: 我认为您对CSS选择器的功能感到困惑。这仅会在您单击链接时更改链接的颜色(并且仅在单击期间,即鼠标按钮保持按下的时间)。您需要做的是在CSS中引入一个新类,例如,当您选择一个链接时,使用