0

好的,我正在使用自定义标签栏(不是基于标签的应用程序),但我希望显示更多按钮的行为,并且如果我超过 5 个项目,则其行为与基于标签的应用程序相同。

由于这只是一个 TABBAR,在普通视图的 XIB 中将 TAB BAR 项目添加到它,它只是在显示时继续将它们添加到 TABBAR。我如何模拟/复制,最好继承基于选项卡的应用程序的行为,以便我的选项卡栏会限制其显示并显示更多并表现得适当?

请不要告诉我,将您的应用程序重写为基于选项卡的应用程序,因为这不是我想要做的,也不能解决其他问题。

提前致谢。

4

1 回答 1

1

添加到 TabBar 的更多按钮是UITabBarController的功能,而不是选项卡栏本身。UITabBarController 有一个标签栏,并添加了更多行为,例如更多按钮、编辑以及您在大多数基于 Tab 的应用程序中看到的所有花哨的东西。

通常它被用作你的应用程序的 rootViewController,但你应该能够将一个添加到你的非基于选项卡的应用程序中。但是,您将需要重写一些代码。

例如,UITabBarController 需要一个包含所有需要显示的 ViewController 的数组,而不是一个 Tab Items 数组。每个控制器都会成为一个选项卡项,每个选项卡项中显示的标题和图像均取自与其关联的 UIViewController。它将管理与所选选项卡项关联的 ViewController 的显示和隐藏。

如果您不希望使用 UITabBarController 并且仍然更喜欢 UITabBar,我猜您除了自己实现行为之外别无选择,也许通过继承 UITabBar。您还需要“更多”文本的本地化版本。

于 2012-05-25T16:46:43.980 回答