使用plist填充分组表

时间:2010-05-09 09:10:53

标签: iphone objective-c plist

我想用plist填充我的分组表。我已经看过DrillDownSave示例项目了,我仍然不是更聪明的。虽然,我确实知道我可以在那里存储层次结构等。

所以这是问题:

  1. 如何使用我的plist将新项添加到分组表中?我正在用一个阵列给桌子喂食,我注意到阵列对我来说不是最好的。

  2. 当用户点击plist中的某个项目时,如何将视图推送到相应的项目?换句话说,如何根据所选行(由plist生成)将视图推送到下一个“视图”?

  3. 如果有任何意义,请回复。 谢谢, 插孔。

1 个答案:

答案 0 :(得分:0)

要将数组的plist表示加载到实际的NSArray实例中,请使用:

NSString *plistPath; // Assume that this is valid

NSArray *plistArray = [NSArray arrayWithContentsOfFile:plistPath];

要“向下钻取”,您需要在UITableViewDelegate的{​​{1}}方法中执行以下操作:

  • 创建新的View Controller实例
  • 告诉新VC您正在“向下钻取”的数据或对象(通常通过设置属性)
  • 将VC推入导航控制器

假设您正在向下钻取的对象是-tableView:didSelectRowAtIndexPath:indexPath,并且您的小部件数组存储在名为Widget的ivar中,您将向您的widgets添加widget属性详细信息视图控制器,然后执行以下操作:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
    MyDetailViewController *detailViewController = [[MyDetailViewController alloc] init];
    detailViewController.widget = [widgets objectAtIndex:indexPath.row];
    [[self navigationController] pushViewController:detailViewController animated:YES];
    [detailViewController release];
}

(这在你的表视图代表中)

有关详细信息,请参阅this part of the documentation