2012-02-23 62 views
1

來我有一個存儲問題信息的plist文件。在頂部是一個數組,並且陣列中的有字典。每個字典中都有一個名爲「Date」的字符串,其日期不同。然後我在表格視圖中顯示日期值。確定哪個字典的對象從

我能夠確定點擊UITableview單元格的文本(因此是日期字符串),但是如何訪問同一字典中的其他值?如果我知道的日期字符串是2012年2月16日,我如何才能「下載網址」?這裏是我的PLIST的照片:

enter image description here

回答

5

你應該得到從被竊聽細胞的indexPath。該indexPath.row應該給你,你可以用它來得到正確的字典從字典的數組的索引號。如果你是不是已經保持此陣,考慮這樣做,如果它是一個管理的大小。

NSDictionary *selectedIssue = [myArrayOfDictionaries objectAtIndex:indexPath.row]; 
NSSTring *downloadURL = [selectedIssues valueForKey:@"Download URL"]; 

就個人而言,我絕不會依賴於日期爲唯一或以任何特定的方式格式化。

+0

大,非常感謝! – 2012-02-23 19:49:46

2

您可以按問題的陣列(問題列表)日期與您的數據,比使用被竊聽細胞的NSIndexPath初始化您TableViewController之前。

要與詞典使用這個片段排序的數組:

NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:YES]; 
[issues sortUsingDescriptors:[NSArray arrayWithObjects:descriptor,nil]]; 

之後,你可以使用indexPath這樣的:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    NSString *url = [[issues objectAtIndex:indexPath.row] valueForKey:@"download_url"]; 
}