gpt4 book ai didi

ios - 如何在实例化之前检查 Storyboard中 Controller 的存在?

转载 作者:行者123 更新时间:2023-12-01 17:11:58 26 4
gpt4 key购买 nike

通过代码使用 storoboard 时,我们可以通过标识符实例化 Controller ,但是如果找不到具有此标识符的 Controller ,则会崩溃。如何避免崩溃和/或提前检查 Controller 的存在?

Controller 实例化示例:

UIViewController *controller = [[UIStoryboard storyboardWithName:@"Settings" bundle:nil] instantiateViewControllerWithIdentifier:model.identifier];
[self.navigationController pushViewController:controller animated:YES];

最佳答案

试试这个。可能不是您正在寻找的。它是一种解决方法。

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
_story = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
}

- (IBAction)go:(id)sender
{
SecondViewController *second;

@try {
second = [_story instantiateViewControllerWithIdentifier:@"Hello"];
}
@catch (NSException *exception) {
NSLog(@"Reason %@" , exception.reason);
}
@finally {
if (second == nil) {
NSLog(@"VC %@" , second);
}
}


}
@end

关于ios - 如何在实例化之前检查 Storyboard中 Controller 的存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28272565/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com