将表格视图单元格从一个视图控制器移动到另一个

时间:2013-05-25 08:51:21

标签: iphone objective-c uitableview

我是新手堆栈溢出和正在大学学习objective-C的学生。我正在为伦敦的科学博物馆建立一个APP,我正在创建一个活动策划者。

我在两个不同的View Controller中设置了两个表视图。

第一个View控制器和表视图称为“Events”,它包含所有当前日期事件。当您单击某个事件时,它会进入一个新的视图控制器,提供有关该事件的更多信息,并有一个“添加到事件”按钮,该按钮会弹出一个警告:“您确定要将此添加到您的事件?”使用添加按钮并相应地关闭按钮。

此表视图中的信息使用三个NSMutableArray填充。 (一个用于标题,副标题和图像)。

第二个视图控制器里面有一个空表视图。我试图做到这一点,每当用户找到他们喜欢的事件时,他们可以点击它,看到更多信息,如果他们想将它添加到他们自己的事件页面,他们可以。我使用NSLog消息得到了警报响应的“添加”按钮,因此实现添加到事件的代码将会在那里。

我的问题是,如果我点击第一个事件,然后选择将其添加到我的事件中,如何发送我点击显示在第二个视图控制器表视图中的特定tableviewcell的信息?

我已经到处寻找有关此事的信息,并在网上搜索了大量关于IOSobjective-C的Lynda课程,但我无法完全理解。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

首先,您不应该使用三个NSMutableArray来填充您的单元格。创建一个NSMutableArray并使用NSDictionary s填充它,并带有标题,副标题和图像的键。甚至更好:为您的活动创建自定义模型(NSObject的子类)并使用这些模型填充NSMutableArray

现在就像您的NSMutableArray是第一个表视图控制器的数据源一样,您需要另一个NSMutableArray作为第二个表视图控制器的数据源。当用户现在点击“添加到事件”时,您只需将事件(模型或词典)添加到第二个表视图控制器的NSMutableArray,并在表视图上调用- (void)reloadData以便重新加载所有数据或使用UITableView Class Reference中的“插入,删除和移动行和节”方法。这将是更好的方法,因为它不会重新加载不需要重新加载的数据。

相关问题