所以我想创建一个最近查看图片的数组。基本上我有一个TableViewController
,它推动位于一个标签中的导航控制器中的图片视图,然后试图让导航控制器记录最近查看过的图片,并将它们列在TableViewController
中,然后将其推送到新的显示图片的视图。我以编程方式在选项卡栏控制器内设置了两个导航控制器。几乎所有的东西都是按照我想要的方式设置的,但我只是无法将最近查看过的图片信息传递给将显示列表的表格视图控制器。试图将数据从一个视图控制器传递到另一个标签栏控制器
这里是我正在尝试当用户点击一个特定的表格单元格来传递数据:
(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
RecentsTableViewController *rtvc = [[RecentsTableViewController alloc] init];
[rtvc.recents addObject:[self dictionaryAtIndex:indexPath]];
[rtvc release];
}
最近用过的是,我在RecentsTableViewController.
创建是越来越初始化确定一个可变数组,使用检查NSLog,
但每次用户单击另一个视图控制器中的表格单元格时,字典都不会被传递给该数组。我也知道字典信息是正确的并且设置正确,因为它传递到显示图像的视图。我想我只是困惑,因为我可以为NavigationController
做到这一点,我只是在努力寻找在一个TabBarController.
对不起数据传递答案,如果这个职位可能是长/混乱,但我真的到处去寻找一个回答没有运气。我听说过使用应用程序委托来存储像一个全局变量,但我的印象是这是不好的做法,我试图正确地编写我的代码。
下面是dictionaryAtIndex方法更新的代码:
- (NSDictionary *)dictionaryAtIndex:(NSIndexPath *)indexPath {
NSArray *flickrPics = [FlickrFetcher photosAtPlace:self.placeID];
NSDictionary *returnedDictionary = [flickrPics objectAtIndex:indexPath.row];
return returnedDictionary;
}
您需要创建一个插座,至少这就是我会做的。 –
您的意思是做一个如果是这样,你怎么去做这件事? – Alex
如果你发布源代码到dictionaryAtIndex方法,它可能有助于调试。 – NWCoder