技术开发 频道

iPhone 开发 loadNibNamed 的使用

  【IT168 技术】感觉很怪怪的

  - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

  {

  static NSString *CellIdentifier = @"ApplicationCell";

  ApplicationCell *cell = (ApplicationCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

  if (cell == nil) {

  #if USE_INDIVIDUAL_SUBVIEWS_CELL

  [[NSBundle mainBundle] loadNibNamed:@"IndividualSubviewsBasedApplicationCell" owner:self options:nil];

  cell = tmpCell;

  self.tmpCell = nil;

  #elif USE_COMPOSITE_SUBVIEW_CELL

  cell = [[[CompositeSubviewBasedApplicationCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"ApplicationCell"] autorelease];

  #elif USE_HYBRID_CELL

  cell = [[[HybridSubviewBasedApplicationCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"ApplicationCell"] autorelease];

  #endif

  }

  // Display dark and light background in alternate rows -- see tableView:willDisplayCell:forRowAtIndexPath:.

  cell.useDarkBackground = (indexPath.row % 2 == 0);

  // Configure the data for the cell.

  NSDictionary *dataItem = [data objectAtIndex:indexPath.row];

  cell.icon = [UIImage imageNamed:[dataItem objectForKey:@"Icon"]];

  cell.publisher = [dataItem objectForKey:@"Publisher"];

  cell.name = [dataItem objectForKey:@"Name"];

  cell.numRatings = [[dataItem objectForKey:@"NumRatings"] intValue];

  cell.rating = [[dataItem objectForKey:@"Rating"] floatValue];

  cell.price = [dataItem objectForKey:@"Price"];

  cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

  return cell;

  }

0
相关文章