2013-01-24 56 views
0

如何理解第一行的符號?我很困惑這種實例化NSDictionary(缺乏經驗)的方式。這是一種鑄造嗎?它來自iOS TableViewController教程,cellForRowAtIndexPath方法。實例化NSDictionary。投射數組?

NSDictionary *item = (NSDictionary *)[self.content objectAtIndex:indexPath.row]; 
cell.textLabel.text = [item objectForKey:@"mainTitleKey"]; 
cell.detailTextLabel.text = [item objectForKey:@"secondaryTitleKey"]; 

我希望下面的替代,它的工作原理:

NSDictionary *item = [arrayContainingDictionaries objectAtIndex:indexPath.row]; 
cell.textLabel.text = [item objectForKey:@"mainTitleKey"]; 
cell.detailTextLabel.text = [item objectForKey:@"secondaryTitleKey"]; 
+0

底部的一個是首選的,當你從一個集合對象中取出一個對象並且不想爲它創建一個實例變量時,通常會使用最上面的一個。 –

回答

0

這兩種方法都應該工作,鑄造對象的NSDictionary可能只是爲了避免錯誤的額外措施,但由於Objective-我猜C會發送一個objectForKey:消息給它應該工作的NSArray所提取的任何對象。

希望這可以給你一些見解。