代码之家  ›  专栏  ›  技术社区  ›  Awais Fayyaz

将推式视图控制器的大小限制为容器视图控制器

  •  1
  • Awais Fayyaz  · 技术社区  · 7 年前

    我正在我的电子商务iOS应用程序中实施过滤器。我希望我的过滤器功能类似于 易趣网 过滤器功能。

    就像用户点击排序过滤器时附带的gif一样,下一个视图(可能是视图控制器)会打开并显示可能的排序选项。我正在尝试复制此功能。

    enter image description here

    我所尝试的。

    我实现了一个容器视图控制器,其中显示了过滤器选项。当用户点击任何过滤器项目时,我正在执行一个推送序列(使用情节提要)到下一个视图控制器,在该视图控制器中我显示相关的过滤器选项

    但问题是。

    当我点击任何过滤器项目继续操作时,我的应用程序会全屏打开下一个视图控制器,而不是在容器视图控制器的边界内。

    查看gif

    enter image description here

    那么,如何将下一个视图控制器的框架限制为其父容器视图控制器?

    此外,下一个视图控制器的高度应等于其中的项目数。查看易趣过滤器gif。(这是次要要求)

    任何帮助都将不胜感激。

    2 回复  |  直到 7 年前
        1
  •  1
  •   Harshal Bhavsar    7 年前

    我建议您的视图层次结构如下所示。

    进入编辑器(xcode菜单)==>将容器视图控制器(主过滤屏幕)嵌入导航控制器中;嵌入==>导航控制器(故事板应打开)。

    在容器视图控制器的didSelect方法上,通过脚本顺序或编程方式推送内部过滤器控制器。

    enter image description here

        2
  •  0
  •   Sealos    7 年前

    您需要使要显示的视图控制器定义 presentation context ,然后在另一个视图控制器上 presentation overCurrentContext . 这应该使另一个视图控制器仅在父视图的上下文中显示自己。

    这与Popors上使用的演示样式类似。