处理标签栏控制器标题中的单击按钮

时间:2012-01-19 01:52:58

标签: ios event-handling uitabbarcontroller uinavigationbar

我有一个带有多个标签/视图的标签栏控制器。我在标签栏控制器的顶部导航栏中添加了“帮助”栏按钮项。

如何处理此按钮的点击次数,理想情况下取决于我当时的观看次数?

我只是在点击时弹出警报,即。无需导航。

2 个答案:

答案 0 :(得分:0)

理想情况下,此“帮助”标签不应根据上下文更改其行为,即先前选择了哪个标签。用户会感到困惑,因为内容不会保持不变。

如果在选择选项卡时引发“弹出警报”,这似乎也是因为用户体验不良而拒绝的基础。选择选项卡应显示该选项卡的新视图。您还必须处理如何以静默方式将用户移回上一个选项卡,和/或不更改选定的选项卡索引。再次,这是一个麻烦的用户体验。

如果您坚持使用此设计 - 我认为这会让您的应用被拒绝 - 您可以使用UITabBarControllerDelegate来控制UITabBarController的行为。

我建议你改变你的设计。

答案 1 :(得分:0)

我设法让这个工作。我想你误会了:我有一个标签栏控件,可以通过根据所选标签推送视图来正常运行。我只是想在导航栏右侧看一个帮助按钮,该按钮会打开一个警报,其中包含您当时碰巧的标签信息。我这样做了:

在标签栏控制器推送的每个视图的viewDidAppear中:

UIBarBarButtonItem *helpButton = [[UIBarBarButtonItem alloc] initWithTitle:@"Help" style:UIBarButtonItemStylePlain target:self action:@selector(helpButtonPressed))];
self.tabBarController.navigationItem.rightBarButtonItem=helpButton;

然后我有helpButtonPressed函数来处理按钮点击,在我的情况下,弹出并提醒一些关于标签的帮助信息。