0

我有一个应用程序,其中有 tableview,其中 tableview 中有 5 行(娱乐、零售、健康、食品、服务)。当我最初运行我的应用程序时,我希望从我的 plist 中获取值(娱乐、零售、健康),并根据我想在我的 tableview 上显示复选标记的值。

换句话说,当我单击 tableview 控制器时,默认情况下,前 3 行应通过从 plist 中获取值来显示复选标记,当我通过单击应将特定值保存到我的 plist 数组中的行来更改值时。

4

2 回答 2

1

只需在每个条目的 plist 中保存一个布尔值。所以我会让每个条目成为一个有两个值的字典。一个是标题,另一个是布尔值。

或者,您可以在 plist 中有两个数组。一个是条目列表,另一个是布尔匹配列表。

于 2012-04-26T12:57:27.197 回答
1

你可以有这样的结构 plist 的每个值都应该包含一个字典。就像在您的示例中,默认情况下娱乐将是一个字典,您可以在字典中添加一个 bool 标志。像这样的东西

NSDictionary *entertainmentDictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"Entertainment",@"name",[NSNUmber numberWithBool:YES],@"Checked",nil];

然后在表格中显示时,您可以像这样从字典中获取 bool 标志的值

NSDictionary *entD = [arrayOfPlistItems objectAtIndex:indexPath.row];
BOOL checked = [[entD objectForKey:@"Checked"] boolValue];
//Not replace this with actual code it is for explaining purpose only
if(checked) {
    cell.accessoryType = checkmarktype;

}else {
  cell.accessoryType = none;
}

希望你能从中明白

于 2012-04-26T13:00:25.493 回答