0

Rubymotionを使用してiOSアプリを構築していますが、シミュレーターでプロジェクトを実行すると、次のエラーが発生します。

app_delegate.rb:31:in `application:didFinishLaunchingWithOptions:': NSInvalidArgumentException: -[NSNull pointSize]: unrecognized selector sent to instance 0x1639cd8 (RuntimeError)

しかし、デバイスで実行してもクラッシュしません。デバイスにiOS6を、シミュレーターにiOS5をインストールしました。

これはクラッシュする行です:

UINavigationController.alloc.initWithRootViewController(firstViewController)

アプリ内のsetTitleTextAttributesのすべてのインスタンスをコメントアウトすると、機能します。これは私がそれをどのように使用するかのいくつかの例です:

aboutController.tabBarItem.setTitleTextAttributes({UITextAttributeFont => tabFont}, forState:UIControlStateNormal)

aboutNavController.navigationBar.setTitleTextAttributes({UITextAttributeFont => titleFont})

iOS5の問題だと思いますか?正しく使っていますか?

4

1 に答える 1

1

navigationBar titleTextAttributes はアクセサーのように設定する必要があると思います:

aboutNavController.navigationBar.titleTextAttributes = {UITextAttributeFont => titleFont}

Apple ドキュメント参照:

http://developer.apple.com/library/ios/#documentation/uikit/reference/UINavigationBar_Class/Reference/UINavigationBar.html

于 2012-11-27T23:04:13.607 に答える