【发布时间】:2011-12-29 01:45:54
【问题描述】:
我希望能够在单击选项卡栏项时执行 IBaction。我正在使用 Xcode 4.2 具有的默认选项卡栏模板,并且我了解如何将 IB 操作链接到按钮...但是,我在尝试将 IBaction 链接到 tabBaritem(在屏幕底部)时遇到了困难。那么当有人点击我的一个标签时,就会执行一个动作?
如何执行此操作?
谢谢!
【问题讨论】:
标签: iphone ios xcode ibaction iboutlet
我希望能够在单击选项卡栏项时执行 IBaction。我正在使用 Xcode 4.2 具有的默认选项卡栏模板,并且我了解如何将 IB 操作链接到按钮...但是,我在尝试将 IBaction 链接到 tabBaritem(在屏幕底部)时遇到了困难。那么当有人点击我的一个标签时,就会执行一个动作?
如何执行此操作?
谢谢!
【问题讨论】:
标签: iphone ios xcode ibaction iboutlet
尝试使用标签栏作为工具栏并不是一件好事,有一个 UI 元素可以做到这一点。如果您确实想在单击选项卡栏按钮时运行某个动作,则需要将其添加到由该按钮激活的控制器中。
【讨论】:
UIToolbar。
这可以通过将您的 ViewController 设置为 UITabBarDelegate 然后为每个选项卡栏项(我将它们标记为 0、1 和 2)指定一个标签来完成。然后实现 UITabBarDelegate 方法,如下所示。只需将“[self performTaskXXX]”替换为您需要运行的任何代码即可。
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
switch (item.tag) {
case 0:
[self performTaskOne];
break;
case 1:
[self performTaskTwo];
break;
case 2:
[self performTaskThree];
break;
default:
break;
}
}
【讨论】: