17

[UIStoryboard mainStoryboard]実行時に iPad または iPhone のストーリーボードを取得するために単純に呼び出すことができるようにしたいと考えています。

4

2 に答える 2

21

これを行う UIStoryboard カテゴリを次に示します。

UIStoryboard+LDMain.h

#import <UIKit/UIKit.h>

@interface UIStoryboard (LDMain)

+ (instancetype)LDMainStoryboard;

@end

UIStoryboard+LDMain.m

#import "UIStoryboard+LDMain.h"

UIStoryboard *_mainStoryboard = nil;

@implementation UIStoryboard (LDMain)

+ (instancetype)LDMainStoryboard {
    if (!_mainStoryboard) {
        NSBundle *bundle = [NSBundle mainBundle];
        NSString *storyboardName = [bundle objectForInfoDictionaryKey:@"UIMainStoryboardFile"];
        _mainStoryboard = [UIStoryboard storyboardWithName:storyboardName bundle:bundle];
    }
    return _mainStoryboard;
}

@end

ここに要点へのリンクがあります

于 2013-10-11T21:36:29.343 に答える