什么是显示详细视图的正确方法?

时间:2014-12-24 04:37:54

标签: ios xcode uitableview detailview

我是iOS新手,来自PHP / MYSQL背景,我正在尝试显示表格的详细视图。

我创建了一个简单的NSMutableArray来保存一些记录,正如我们在网络编程中所说的那样。我能够在表格视图中显示它们并让它工作,所以当你触摸一行时,你会转到详细页面。

但是我完全不知道如何使用MVC模型获取详细信息视图以显示数据,并且已经在网上搜索无法找到如何执行此操作的简单示例。我已经尝试了很多教程并观看了大量的视频但却无法掌握它,因为我不了解所涉及的原理。我想拉取点击记录的数据,但不知道将其传递给详细视图。

NSMutableArray是在tableview控制器中创建的。试图遵循MVC,我还创建了一个模型类,列出了与数组中保存的字段名称相对应的一些属性。

我无法弄清楚如何在详细视图中显示它。

是否与准备癫痫有关?但是,这似乎违反了MVC,因为详细页面的数据实际上是在表视图页面中,即不同的控制器。

我迫切需要一些指导......

我不知道要尝试什么代码,因为没有人能为我工作。我只需要一个如何做这个看似简单的例行任务的基本例子。

1 个答案:

答案 0 :(得分:0)

在DetailViewController中创建一个属性,然后在其'didSelectRowAtIndexPath'中设置TableViewController中的属性,如下所示

DetailViewController *dvc = [DetailViewController alloc] init]; //Can be instantiated via the storyboard too.

OR

DetailViewController *dvc = (DetailViewController *)[self.storyboard instantiateViewControllerWithIdentifier:@"DetailViewControllerIdentifier"]; // Do not forget to set the identifier in the storyboard for the viewcontroller.

然后,

dvc.recordsArray = self.recordsArray //setting the recordsArray property of the DetailViewController object to point to the TableViewController recordsArray

[self.navigationController pushViewController:DVC animated:YES];

[self.TableViewController deselectRowAtIndexPath:indexPath animated:YES];