通过模态视图呈现详细视图控制器 [关闭]

Posted

技术标签:

【中文标题】通过模态视图呈现详细视图控制器 [关闭]【英文标题】:Presenting detail view controller by Modal View [closed] 【发布时间】:2012-06-15 10:22:49 【问题描述】:

我正在开发我的第一个应用程序,在此之前一切都很顺利(唯一要做的事情)。情况如下:

我的主视图控制器中有一个表格视图。所以,当有人选择一行时,我想显示另一个视图控制器(详细视图控制器),但我需要通过模式视图而不是推送来呈现它,因为我没有使用表格视图控制器,所以在主视图中只有一个简单的表格视图。 .有可能做到吗?如果是这样,我该如何实现“didSelectRowAtIndexPath”?

感谢您的帮助,我正在尝试解决此问题 3 天,哈哈

【问题讨论】:

您应该指定编程语言/框架。 如果只使用视图,则必须制作动画。否则最好尝试使用视图控制器。 【参考方案1】:

在您的 MainViewController 中,设置 tableView.delegate = self 现在实现didSelectRowAtIndexPath,在其中你将执行以下操作

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

    //Use indexPath.row or indexPath.section to get your data
    YourViewController *controller = [[YourViewController alloc] init];
    controller.someData = [someArray objectAtInde:indexPath.row];
    [self presentModalViewController:controller animated:YES];

【讨论】:

您好,非常感谢您的回答。但我仍然无法上班。也许我在访问 main.h/main.m 中的详细视图控制器时遇到问题。在您的代码中,我将“yourViewController”替换为 detailView 标识符,对吗?我必须为视图控制器创建一个属性吗?抱歉,我有点迷失在“someData”字段中,我有一个带有本地通知的数组,我现在不能只显示模态视图,然后在详细视图控制器的 viewDidLoad 中实现我想要的数据展示? 是的,如果当前视图控制器不必将任何日期传递给详细视图控制器,那么可以,删除 someData 并将数据加载到详细视图控制器的 viewDidLoad 上 关于为什么 Xcode 找不到 detailViewController 的任何线索?

以上是关于通过模态视图呈现详细视图控制器 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何关闭模态视图控制器,然后立即让呈现视图控制器呈现不同的模态视图控制器?

关闭模态视图控制器后呈现不同的视图控制器

将模态呈现的视图控制器关闭到不同的底层视图控制器

视图控制器以模态方式呈现/关闭时的通知?

关闭模态呈现的视图控制器后切换标签栏控制器视图控制器

关闭从模态呈现的视图控制器翻转的视图控制器