我正在尝试从AppDelegate didViewLoadFinished函数进行导航,但是由于对iOS完全陌生,因此无法成功。我正在为ViewControllers使用情节提要。
我还检查了其他类似的解决方案:Swift - pushViewController from appDelegate, rootViewController.navigationController is nil 但这并不能解决我的问题。
这是我尝试加载新的ViewController“ MultipleMarkersViewController”的方式:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main.storyboard" bundle:nil];
MultipleMarkersViewController *wc=[storyboard instantiateViewControllerWithIdentifier:@"MultipleMarkersView"];
[self.window.rootViewController.navigationController pushViewController:wc animated:YES];
预期结果是加载新的ViewController。 但是实际结果是“ App崩溃”,并显示以下日志输出:
0 CoreFoundation 0x000000010894f6fb __exceptionPreprocess + 331
1 libobjc.A.dylib 0x0000000107ef3ac5 objc_exception_throw + 48
2 UIKitCore 0x00000001119f9624 +[UIStoryboard storyboardWithName:bundle:] + 675
3 Runner 0x00000001060b09bd __57-[AppDelegate application:didFinishLaunchingWithOptions:]_block_invoke + 909
4 Flutter 0x000000010614c9a2 __45-[FlutterMethodChannel setMethodCallHandler:]_block_invoke + 115
5 Flutter 0x0000000106169616 _ZNK5shell21PlatformMessageRou<…>
答案 0 :(得分:0)
这是我经过24小时的努力后解决的问题。我唯一尝试的是“ Used Try Catch Block”,错误是我没有使用正确的标识符名称,这导致了空指针异常。 这是代码:
git config --global credential.https://github.com.useHttpPath true
答案 1 :(得分:0)
在加载情节提要时,无需在其名称后添加扩展名“ .storyboard”。 因此,请使用以下代码:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
关于最后一行,如果您要从[AppDelegate didFinishLaunchingWithOptions]加载视图,则我希望使用以下行:
[self.window setRootViewController: wc]