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

在Android平台上实现Instagram类应用内导航系统

邢皓
2023-03-14

我必须实现一个类似于Instagram Android客户端使用的导航系统

  1. 屏幕底部应该一直有一个永久的标签栏。
  2. 当用户在这些选项卡中的一个选项卡中进行更深的导航时,假设到一个详细信息视图,然后切换到另一个选项卡,然后切换回上一个选项卡,最后显示的(更深的)详细信息视图应该会显示出来,在向后按下时,它应该会迭代到所述选项卡的主视图。

到目前为止,我得出的结论如下:

    null

我想不出更好的办法了。有没有更好/更简单的方法来处理上述行为?我是不是漏掉了什么?(我知道在Android世界里这是一个糟糕的应用程序设计,但这是另一个问题)

共有1个答案

颜高朗
2023-03-14

我张贴了一个答案,因为这个问题是相当死的,但结论可能对其他人有帮助。

我们最终坚持了老式的NavgationDrawer模式,该模式运行良好。但与此同时,我必须实现一个库项目,该项目为宿主应用程序提供了一个片段,该应用程序具有自己的自定义逻辑。然后该片段使用它的ChildFragmentManager在其内部添加另一个片段。ChildFragmentManager被移植回Android Support v4库中,因此您可以在任何地方基本使用它。

所以假设你想要x个菜单点,你可以在其中更深地导航。这些片段将使用它们自己的ChildFragmentManagers添加其他片段,以便在菜单中更深入地导航。ChildFragmentManagers有自己的后堆栈,所以您不必太担心处理状态。如果选择了另一个菜单,则可以在MainActivitys FragmentManager中查找相应的片段,并更改回该片段,或者在尚未添加的情况下添加该片段。

@Override
public void onBackPressed() {
  boolean handled = false;
  if(getFragmentManager().getBackStackEntryCount() == 0){
    // No menu added
    return super.onBackPressed();
  }

    Fragment frag =    getFragmentManager().getBackStackEntryAt(getFragmentManager().getBackStackEntryCount() - 1);

  if (frag instanceof XMenuFragment && frag.isVisible()) {
    FragmentManager childFm = frag.getChildFragmentManager();
    if (childFm.getBackStackEntryCount() > 0) {
      // pop the last menu sub-Fragment
      childFm.popBackStack();
      handled = true
    }
  }

  if(!handled){
    super.onBackPressed();
  }
}
 类似资料:
  • 问题内容: 我是Android新手。似乎仅是日蚀和SDK安装程序就已经存在太多问题了。我一直在研究Android开发人员网站上的示例,但它抛出一个错误: 导入android.support无法解析 我正在尝试导入以下内容: 我安装了三个最新的SDK平台版本,还安装了rev.10支持库。android.jar文件指向错误的文件夹吗?我找到了要导入的文件夹/文件,但我想知道它们是否在正确的位置。 C:

  • 我试图遵循谷歌最新的良好实践,用导航组件实现单个活动应用程序。 然而,在阅读了整个导航留档后,我仍然认为有很多情况下,他们没有解决。 例如,我应该如何实现以下情况: 应用程序在闪屏中启动。然后在加载后进入新闻片段。 注意:闪屏应该从后台弹出,因为它不应该再出现了。 然而,部分中的一些片段可以导航到一个新区域,该区域应该有一个后退按钮(而不是抽屉)。

  • 它显示了方向,而用户将移动与位置在android应用程序,但没有来源找到和我是新的这个主题,请给我一些建议或提示,这一任务,如何在应用程序中使用

  • 本文向大家介绍android实现底部导航栏,包括了android实现底部导航栏的使用技巧和注意事项,需要的朋友参考一下 底部导航栏我选择用FragmentTabHost+Fragment来实现,这个方法比较好用,代码量也不多 首先是开始的activity_main.xml 也可以直接在xml文件里面写 这xml文件就一个view加一个tab  view用来显示碎片,tab用来放置底部按钮的数量 再

  • 本文向大家介绍Android使用fragment实现左侧导航,包括了Android使用fragment实现左侧导航的使用技巧和注意事项,需要的朋友参考一下 使用简单的fragment实现左侧导航,供大家参考,具体内容如下 先上效果图: MainActivity.java Fragment1.java Fragment2.java 源码地址:使用fragment实现左侧导航 以上就是本文的全部内容,