【问题标题】:Obj-C Alternative storyboard for landscape orientation面向横向的 Obj-C 替代故事板
【发布时间】:2015-09-09 08:38:40
【问题描述】:

快速提问。这是否可以将情节提要创建为横向?我必须改变视图中元素的一些位置,我不能使用自动布局来处理它。当然我可以用代码写出来,但我认为没有必要。我是 iOS 开发人员的新手,但我是 Android 开发人员。在那里,我们可以为每个实例创建不同的文件夹。我认为它应该是这样的:

Main.storyboard

Main_iPad.storyboard

Main_landscape.storyboard

Main_landscape_iPad.storyboard

当然,创建不同的文件不是问题。问题是:如何在我的代码/plist/等中正确链接它。

【问题讨论】:

    标签: ios objective-c xcode storyboard orientation


    【解决方案1】:

    警告:除非您的布局完全不同,否则不要为同一视图的横向版本创建单独的笔尖/故事板。自动布局应在方向更改时处理布局更改。

    假设您有充分的理由这样做:

    对于同一个视图/视图控制器,您可以有不同的 nib/故事板。就像你只有一个笔尖/故事板一样实现每一个。然后创建视图/视图控制器如下:

    对于笔尖:

    NSString *nibName = @"NAME OF ONE OF THE NIBS";
    NSArray *nibs = [[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil];
    id view = [nibs firstObject]; // Ideally, iterate through the array and check class, then return the view.
    

    故事板:

    NSString *storyboardName = @"NAME OF ONE OF THE STORYBOARDS";
    NSString *viewControllerIdentifier = @"VIEW CONTROLLER IDENTIFIER";
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle:nil];
    UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:viewControllerIdentifier];
    

    【讨论】:

      猜你喜欢
      • 2014-11-15
      • 1970-01-01
      • 1970-01-01
      • 2013-09-18
      • 2015-09-28
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多