0

我已经使用 Xcode 构建了一个 iOS 应用程序,现在将其转换为 RubyMotion。

使用界面生成器,我能够在我的一个视图控制器上的导航栏中添加分段控件。当我尝试在 RubyMotion 中以编程方式重新创建它时,应用程序崩溃而不报告错误是什么。

谁能指出我哪里出错了?另外, init 是声明这个的最佳位置吗?还是视图生命周期回调之一,例如 viewDidLoad?

class MyController < UIViewController

  def init
    if super
      image = UIImage.imageNamed('tab_bar_icons/one.png')
      self.tabBarItem = UITabBarItem.alloc.initWithTitle('One', image: image, tag:1)
      self.navigationItem.titleView = searchTypeContol # when commented out, the app doesn't crash!
    end
    self
  end

  def searchTypeControl
    @searchTypeControl ||= begin
      _searchTypeControl = UISegmentedControl.alloc.initWithFrame( CGRectZero)
      _searchTypeControl.segmentedControlStyle = UISegmentedControlStyleBar
      _searchTypeControl.insertSegmentWithTitle('One', atIndex: 0, animated: false)
      _searchTypeControl.insertSegmentWithTitle('Two', atIndex: 0, animated: false)
      _searchTypeControl.insertSegmentWithTitle('Three', atIndex: 0, animated: false)
      _searchTypeControl.sizeToFit
      _searchTypeControl
    end
  end

end    
4

1 回答 1

0

这是一个错字...:/

第 7 行searchTypeControl不应该searchTypeContol

我希望 RubyMotion 已经向我报告了这个:(

于 2012-06-21T20:57:52.570 回答