2012年10月28日日曜日

Force.com SDK for iOSをStoryboard対応に

Force.com SDK for iOSのテンプレートを簡単にStoryboard対応にする方法をまとめました。以前はRestKitがソースごと提供されていたのでスプラッシュも含めて変更可能だったのですが、今はバイナリとヘッダだけになってしまったので簡単にはいじれません。

そこで、SFAuthorizingViewController.xibはそのまま残して、それ以外をStoryboard対象とします。

1.新しいプロジェクトをテンプレートNative Force.com REST Appから作る

Use Automatic Reference Counting(ARC)チェックはオフで。

2.新しいStoryboardを用意してTableViewControllerを貼る。

Storyboardの名前はStoryboardとします。新しく出来たStoryboardは何も入っていない状態なので、ここにTable View Controllerを貼ります。

3.Table View Controllerの設定

カスタムクラスとしてRootViewControllerを設定し、View ControllerのIdentifierを rootView にします。Storyboard上のPrototype Cells下にあるTable View Cellをクリックし、Identifierを CellIdentifier に変更します。

4.ソースの変更

AppDelegate.mのを以下のものと差し替えます。


- (UIViewController*)newRootViewController {
    UIStoryboard *storyboard 
        = [UIStoryboard storyboardWithName:@"Storyboard" 
                                    bundle:[NSBundle mainBundle]];
    RootViewController *rootVC 
        = [storyboard instantiateViewControllerWithIdentifier:@"rootView"];
    
    UINavigationController *navVC
        = [[UINavigationController alloc] initWithRootViewController:rootVC];
    
    return navVC;
}


5.SFNativeRootViewController.nib削除


残してあっても影響ないので、削除しなくても変わりありませんが。


以上で、OK。iPhone Simulatorを選んでRunするとちゃんとAuthorize画面が出て、認証後Table Viewに進みます。あとはよろしく:-)

0 件のコメント:

コメントを投稿