在表格视图中获取“值”的最佳方法 [关闭]

Posted

技术标签:

【中文标题】在表格视图中获取“值”的最佳方法 [关闭]【英文标题】:Best way to get "values" in table view [closed] 【发布时间】:2013-06-03 15:44:01 【问题描述】:

有一个应用程序,您可以在其中列出一长串国家/地区。您可以点击一个国家,然后进入下一个视图,显示首都!

存储国家和首都的最佳方式是什么?

是 NSarray 吗?像这样

       array = @[
           @@"Country" : @"Afghanistan", @"Capital" : @"Kabul", @"Flagfile" : @"Afghanistan.png",
          @@"Country" : @"Albania", @"Capital" : @"Tirana", @"Flagfile" : @"Albania.png",
          @@"Country" : @"Algeria", @"Capital" : @"Algiers", @"Flagfile" : @"Algeria.png",
          @@"Country" : @"Andorra", @"Capital" : @"Andorra la Vella", @"Flagfile" :    @"Andorra.png"];

如果是这样,我如何仅将国家/地区设置为表格视图单元格,以及如何更改此代码以便从上面的数组中获取国家/地区标题?

 totalStrings=[[NSMutableArray alloc]initWithObjects:@"Afghanistan", @"Albania",@"Algeria", @"Andorra",nil];

..等等!

【问题讨论】:

我不明白你的意思是“我如何只让国家成为表格视图单元格”。一个国家怎么可能是一个表格视图单元格?它们是你的字典。 在来论坛问很多问题请人帮助你之前,自己努力一下,上个教程 【参考方案1】:

你可以这样做:

NSArray *countries = [array valueForKey:@"Country"];

但坦率地说,我只是使用原始数组并让cellForRowAtIndexPath 通过array[indexPath.row][@"Country"] 抢占国家/地区。创建这个额外的数组没有意义。但是,如果您真的想要它,那就是您的方式。

【讨论】:

【参考方案2】:

数组 = @[ @@“国家”:@“阿富汗”,@“首都”:@“喀布尔”,@“标志文件”:@“阿富汗.png”, @@“Country”:@“Albania”,@“Capital”:@“Tirana”,@“Flagfile”:@“Albania.png”, @@"Country" : @"Algeria", @"Capital" : @"Algiers", @"Flagfile" : @"Algeria.png", @@"Country" : @"Andorra", @"Capital" : @"Andorra la Vella", @"Flagfile" : @"Andorra.png"];

这是包含 4 个字典的数组。

每个键都有:

Country

Capital

Flagfile

要仅提取一个键的值,您可以使用:

NSArray *totalStrings=[array valueForKey:@"Country"];

【讨论】:

OP 说国家的“长名单”。 NSDictionary 对象是实现此目的的最佳方式吗,Anoop? @MichaelDautermann:我不知道多久,他可以使用coredata来处理比较长的列表。

以上是关于在表格视图中获取“值”的最佳方法 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

关闭弹出框后表格视图没有更新?

UITableViewCell - 在动态表格视图中获取 UITextField 值

如何通过选择表格视图单元格获取字典值?

具有行展开和折叠选项的表格视图的最佳方法

在动态表格视图中获取文本字段值

在一个视图上使用不同数据填充多个表的最佳方法是啥? [关闭]