【问题标题】:I need Expert Advice on this implementation of UITabBarController我需要有关此 UITabBarController 实现的专家建议
【发布时间】:2011-10-11 03:32:40
【问题描述】:

我目前需要 8 个TabBarItems,我只能显示 4 个项目。而且我需要能够滚动到接下来的 4 个 tabBarItems。

在 UITabBar 的默认行为中,您通常会为超过 5 个选项卡栏项目获得一个“更多”选项卡项。我希望它是滚动按钮,而不是更多按钮。

所以~~如果我按下滚动按钮(或第五个)tabBarItem,它应该会显示另外 4 个带有后退滚动按钮的标签栏项目。

这些是我的做法--

  1. 实现 Scroll UITabBarItems 但这意味着我必须从头开始处理项目,这不是我的最佳选择。

  2. 我可以将视图控制器推到最后一个选项卡上,并显示一个带有 4 个选项卡栏图标的新视图,然后进行处理。 (从标签栏控制器推送标签栏控制器时遇到问题)

  3. 我可以为接下来的四个选项卡制作一个模态视图控制器,并在我按下返回滚动按钮时弹出它。 (无法将 tabbarcontroller 设置为当前的模态视图控制器)

  4. 从 tabBarViewController 数组中删除所有视图,并在单击相应选项卡时添加新视图。单击上一个选项卡时再次重新加载相同的选项卡。这些有什么并发症?我不想打扰 rootController。

你还能想到什么?

无论我采取什么方法,我需要在两个视图之间滑动动画。

如果有人能就可以做什么提供专家建议,我将不胜感激。

谢谢。

【问题讨论】:

标签: iphone objective-c cocoa-touch uitabbarcontroller uitabbaritem


【解决方案1】:

我只看到两个不错的选择:

  1. 把标签扔进下水道,接受这八个选项对于标签栏来说太多了。而是转到顶级选择屏幕。使用带有列表的表格视图,或类似选项网格的主屏幕。
  2. 咬紧牙关,实现您自己的 LGInfiniteTabBarController,包括一个 LGInfiniteTabBar,它实际上具有您想要的行为。对于您想要的,没有标准的控制。

【讨论】:

  • 您的方法非常适合应用 2.0。开发时间在这里至关重要。您对选项 2 和 3 有何看法?
  • 2.双标签栏,永远不会! 3. 如果项目的分组是合乎逻辑的,也许。记住;痛苦是暂时的,吸吮是永远的。
【解决方案2】:

您可以接收委托– tabBarController:didSelectViewController:,如果它是边缘视图控制器,则执行动画并切换您的 tabbarcontrollers 视图控制器。 您将有一个空视图控制器,其中有一个标签栏项目,显示“下一个”或“上一个”或其他任何内容,并且您使用空视图控制器管理单独的视图控制器数组,无论哪个选项卡显示更多。然后在用户使用该选项卡时交换适当的视图控制器。

【讨论】:

    猜你喜欢
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    • 1970-01-01
    相关资源
    最近更新 更多