【问题标题】:How to modally present a View Controller on tap of tab bar item如何在点击标签栏项目时以模态方式呈现视图控制器
【发布时间】:2015-12-11 19:29:58
【问题描述】:

我在情节提要中创建了一个带有 3 个栏项的标签栏视图控制器。

现在点击一个标签栏项目,我想展示一个通过导航控制器连接到标签栏项目的 ViewController。

由于我没有创建任何标签栏对象,因此如何以编程方式实现。

(或) 有没有办法捕获标签栏项目选择(在情节提要中创建)

谢谢...

【问题讨论】:

    标签: ios objective-c uinavigationcontroller storyboard uitabbarcontroller


    【解决方案1】:

    在 viewDidLoad 中添加这个:将视图控制器分配给每个按钮:

    self.tabBarController.viewControllers = 
     @[firstViewController,secondViewController,thirdViewController];
    

    以下是检测按钮点击的方法:

    -(void) tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
    {
        if (tabBarController.selectedIndex == 0) {
           // present your first view controller
        }
        else if (tabBarController.selectedIndex == 1) {
          // present your second view controller
        }
        else if (tabBarController.selectedIndex == 2) {
          // present your third view controller
        }
    }
    

    【讨论】:

    • 我必须在didFinishLaunching方法中的AppDelegate中写吗?
    • 在加载标签栏视图控制器的 UITabBarViewController 类中执行此操作。
    • 但它是使用情节提要创建的,这是另一个标签栏项目,已添加到相同的..因此没有为它创建类...
    【解决方案2】:

    使用UITabBarControllerDelegate 获得有关选择了哪个选项卡的通知。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-24
      • 2011-01-20
      • 2014-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多