iOS UIBarButtonItem 链接到 ViewController
Posted
技术标签:
【中文标题】iOS UIBarButtonItem 链接到 ViewController【英文标题】:iOS UIBarButtonItem link to ViewController 【发布时间】:2015-09-08 13:21:09 【问题描述】:我有一个关于 UIBarButtonItem
链接到情节提要中的另一个 ViewController 的问题。在这个顶部栏中,我在右侧有 2 个图标,使用数组执行此操作:
[self.navigationItem setRightBarButtonItems:[NSArray arrayWithObjects:_meetupButton, _searchButton, nil]];
两个按钮都可以在控制台中使用,但是当我想使用 meetupButton
导航到另一个 ViewController 时,它不起作用。
故事板名称是 Main
ViewController 正确链接到MeetupStartViewController
。
当他运行以下代码时,他崩溃了。我做错了什么?
- (void)toggleMeetup:(UIButton *)button
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle: nil];
UIViewController * vc = [storyboard instantiateViewControllerWithIdentifier:@"MeetupStartViewController"];
[self presentViewController:vc animated:YES completion:nil];
错误日志:
2015-09-08 15:46:46.554 APPNAME[2267:530587] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“Storyboard () 不包含标识符为“MeetupStartViewController”的视图控制器'' * 首先抛出调用栈: (0x184e9022c 0x196b640e4 0x189eced3c 0x1000f90f0 0x1899411ec 0x1899411ec 0x18992a2c8 0x189940b88 0x189940814 0x189939d50 0x18990cf74 0x189bae124 0x18990b488 0x184e47f8c 0x184e47230 0x184e452e0 0x184d70f74 0x18e7cb6fc 0x189972d94 0x1000a2764 0x19720ea08),点击 libc++abi.dylib:以 NSException 类型的未捕获异常终止 (lldb)
MeetupStartViewController
是一个 Swift 类,其他代码是 Objective-C。
【问题讨论】:
你能粘贴崩溃日志吗? 抱歉我忘记了,看我的帖子。 您是否在 Storyboard 中为 MeetupStartViewController 设置了显式 ID?好像找不到? 是的,这就是解决方案,我在 Storyboard ID 视图中添加了一个名称,并用这个名称替换了类名。现在可以了。 【参考方案1】:您似乎没有为 MeetupStartViewController 设置所需的 ID。
为此,请进入故事板,选择 MeetupStartViewController。 选中复选框:使用 Storyboard ID 并在 StoryboardID 框中写入“MeetupStartViewController”。这是一个视觉示例:
【讨论】:
以上是关于iOS UIBarButtonItem 链接到 ViewController的主要内容,如果未能解决你的问题,请参考以下文章
使用 UISearchController 时,iOS 13 UIBarButtonItem 不可点击和重叠 UINavigationBars
UIBarButtonItem 如何禁用辅助功能 (iOS)