单击选项卡栏项目时显示覆盖菜单 - IOS

Posted

技术标签:

【中文标题】单击选项卡栏项目时显示覆盖菜单 - IOS【英文标题】:Showing a overlaying menu when tab bar item is clicked - IOS 【发布时间】:2013-05-27 09:51:57 【问题描述】:

感谢您阅读我的问题!

我有一个由 5 部分组成的标签栏,用于应用程序导航,中心标签被 UIButton 覆盖并且稍大(很像 instagram 应用程序)。这工作正常。

但我想要的是最右侧的标签栏项目,以在单击时显示覆盖菜单。我不希望它切换到带有菜单的viewcontroller。无论您目前处于哪个其他视图中,我都希望显示菜单。所以我希望它像标签栏中的按钮一样工作。但我不知道该怎么做。

我应该在tabbaritem 上使用覆盖按钮还是应该抓住tabbarclick,但是在这种情况下如何防止视图发生变化?

感谢您的帮助!

【问题讨论】:

【参考方案1】:

你需要实现UITabBarDelegate。然后覆盖tabBar:didSelectItem: 并在此处实现您的自定义显示。参考下图

http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UITabBarDelegate_Protocol/Reference/Reference.html

然后我会制作一个自定义 UIView 并在按下特定标记 UITabBarItem 时将其淡入。

【讨论】:

效果很好,谢谢!只有一件事:当我按下标签栏项目时,它仍然会切换视图控制器。有什么办法可以预防吗?

以上是关于单击选项卡栏项目时显示覆盖菜单 - IOS的主要内容,如果未能解决你的问题,请参考以下文章

iOS:选择选项卡之前的选项卡栏项目标题

单击通知时更改选项卡栏

单击 UITabBarController 时的自定义操作

将选项卡添加到 QTabWidget 时显示问题

单击选项卡时,选项卡栏控制器不显示 XIB UIViewController

禁用在点击时显示最小化的功能区选项卡