我在详细视图方面遇到了重大问题,希望有人能指出我正确的方向。
我想为app advancetableviewcells这样的应用添加详细信息视图。因此,一旦您单击一个单元格,它就会引导您进入详细视图。
只有catch,它必须将数据从单元格加载到详细视图中。
我已经在网上看了很多网站和分配示例,我可以看到它是如何用简单的表格完成的,但是当涉及单个单元格和.plist中的数据时。我输了。
请任何帮助都会很棒。 感谢
答案 0 :(得分:1)
添加细节控制器并不难实现。在您的根视图中 - 我想 - 您从上面提到的plist文件中收集所有数据,并按照您自己的标准对数据进行排序。为什么不在根视图控制器中创建一个NSArray,其中包含每个单元格的NSDictionary。在该字典中,您可以放置所有信息,例如标题,价格或该对象的其他内容。在您的详细控制器中,只需添加一个NSDictionary属性。
如果选择单元格,则会调用didSelectRowAtIndexPath
方法。在此方法中,您将详细视图控制器中的NSDictionary属性设置为索引indexPath.row
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
DetailViewController *myDetailController = [[DetailViewController alloc] initWithNibName:@"NibBame" bundle:nil];
myDetailController.detailDict = [rootViewArray objectAtIndex:indexPath.row];
[self.navigationController pushViewController:myDetailController animated:YES];
[myDetailController release];
}
之后,特定单元格的所有数据现在都可以在详细视图控制器中使用,您可以使用NSDictionary的优点,只需通过一个简单的键即可获得变量。例如:
- (void)viewDidLoad {
self.title = [myDictionary valueForKey:@"specificKey"];
}
答案 1 :(得分:0)
表格单元格需要从UITableViewCell进行子类化。您不必将视图控制器的标题设置三次或更多次,它总是被覆盖。您应该在cellForRowAtIndex方法中设置自定义单元格并设置单元格的属性。