2011-03-01 46 views
0

定制我有自定义的UITableViewCell:ScrollViewCell初始化和加载的UITableViewCell

我想知道有什么区别下面的代码

static NSString *CellIdentifier = @"ScrollViewCell"; 
ScrollViewCell *cell = (ScrollViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
if (cell == nil) { 

    //***** WHAT IS THE DIFFERENCE BETWEEN THIS CODE AND.. 
    NSArray *xibObj = [[NSBundle mainBundle] loadNibNamed:@"ScrollViewCell" owner:nil options:nil]; 
    for(id currentObj in xibObj){ 
     if ([currentObj isKindOfClass:[ScrollViewCell class]]) { 
      cell = (ScrollViewCell *) currentObj; 
     } 
    } 
    //***** ..THIS CODE 
    cell = [[ScrollViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; 
} 

哪一个我应该使用,为什么之间?

回答

0

第一个示例将从应用程序捆绑中的.xib文件加载单元。每个单元格可以处理它自己的代码,并且行为很像0​​。当您尝试从数组加载数据时,此方法可能会变得复杂。您必须将获取数据的对象传递给单元格,并在开始编码之前有一个非常清晰的设计。

另一种方法正常情况下分配UITableViewCell类的空实例。这种方法通常用于单元的编程配置。你可能会在大多数地方看到这个。

祝你好运,

奥罗拉奎拉