如何以编程方式更改选项卡?

时间:2012-11-15 09:22:01

标签: rubymotion

我正在使用RubyMotion创建一个iOS应用程序。我想创建一个自定义的tabBar因此我需要知道如何以编程方式更改选项卡以及如何获取当前选项卡。这可能吗?我该怎么办?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用motion-tab创建标签栏。

基本用法(来自自述文件)

def application(application, didFinishLaunchingWithOptions:launchOptions)
  @window = UIWindow.alloc.initWithFrame(UIScreen.mainScreen.bounds)

  tabs = [
    {
      systemIcon: UITabBarSystemItemContacts,
      navigationController: true,
      viewController: ContactsViewController
    }, {
      title: "Custom",
      icon: "custom.png",
      navigationController: false,
      viewController: CustomViewController.alloc.initWithCustomInit(true)
    }, {
      title: "Settings",
      icon: "settings.png",
      navigationController: true,
      viewController: SettingsViewController
    }
  ]

  tabBarController = MotionTab::TabBar.createTabBarControllerFromData(tabs)
  MotionTab::TabBar.select(tabBarController, title: "Settings")
  # MotionTab::TabBar.select(tabBarController, tag: 0) # Selects first tab

  @window.rootViewController = tabBarController
  @window.makeKeyAndVisible
end

gem现在没有当前的标签功能,但是将类属性添加到返回当前标签的MotionTab::TabBar并不会太困难。