加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xcode – 在Master-Detail App模板中加载不同的View Controller

发布时间:2020-12-14 19:36:24 所属栏目:百科 来源:网络整理
导读:我正在使用 Xcode 4.3.3开发一个主细节应用程序,现在在主视图控制器中我已经设法加载一个名为“Fav Real”的附加视图控制器当这个视图控制器加载时,它将包含从sqlite数据库中取出的不同项目一个tableViewController.我的问题在这里,当我点击任何加载的行时,
我正在使用 Xcode 4.3.3开发一个主细节应用程序,现在在主视图控制器中我已经设法加载一个名为“Fav Real”的附加视图控制器当这个视图控制器加载时,它将包含从sqlite数据库中取出的不同项目一个tableViewController.我的问题在这里,当我点击任何加载的行时,我需要将不同的viewController加载到detailViewController中,以加载另一个视图控制器而不是第一个.我实际上迷路了,我试图做以下架构,但我不知道如何实现我的目标…任何帮助将受到高度赞赏.

如图所示,这些项目将在FavReal tableView中正确加载,但我的目标是当我点击任意一行时,右侧显示的“Details”将加载而不是DetailsViewController.我在FavReal.m中尝试了此代码但是我总是得到:“应用程序试图将nil视图控制器推向目标.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

 Details * vc4 = [self.storyboard instantiateViewControllerWithIdentifier:@"Details"];
 [self.navigationController pushViewController:vc4 animated:YES];

}

感谢您的时间,如果需要进一步的详细信息,请告诉我

解决方法

如果有人遇到与我相同的问题,我找到的唯一解决方案是不加载不同的视图控制器并替换原来的detailViewController,但实际的解决方案是创建一个新的故事板并使其出现在收藏夹按钮时点击,这样你就会有一个漂亮的时尚效果,并保持你的数据表达准确.为此,请使用以下代码行:

UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"SecondStoryboard" bundle:nil];
UIViewController* initialHelpView = [storyboard instantiateInitialViewController];

initialHelpView.modalPresentationStyle = UIModalPresentationFullScreen;
[self presentModalViewController:initialHelpView animated:YES];

你有自由改变你喜欢的模态演示.祝你好运

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读