1

メソッドcell.titleLabelcell == nil部分にaのフォントを設定する必要がありますか?cellForRowAtIndexPath:または後?また、いくつかのラベルとプログラムを追加していUIImageます。は変更されUIImageませんが、ラベルの値は変更されます。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  static NSString *identifier = @"identifier";
  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
  if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier] autorelease];

 [cell.titleLabel setFont:[UIFont fontWithName: @"Asap-Bold" size: 15.0f]];
      [cell.descriptionLabel setFont:[UIFont fontWithName: @"Asap-Regular" size: 10.0f]];

  }

  **// or should it go here?**

  return cell;
}

助けてくれてありがとう。

4

2 に答える 2

3

このコードは一度実行する必要があるため、中かっこでフォントを正しく設定しています。中括弧の外側は、データソースにアクセスするためのコードである必要があります。たとえば、このようなsmthを実行する場合などです。 cell.label.text = [self.dataArray objectAtIndex:i];

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  static NSString *identifier = @"identifier";
  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
  if (cell == nil) {
     //executed once per cell
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault          reuseIdentifier:identifier] autorelease];
    [cell.titleLabel setFont:[UIFont fontWithName: @"Asap-Bold" size: 15.0f]];
    [cell.descriptionLabel setFont:[UIFont fontWithName: @"Asap-Regular" size: 10.0f]];
  }
//Executed every time
 cell.label.text = [self.dataArray objectAtIndex:i];
  return cell;
}
于 2013-02-05T11:40:22.797 に答える
1

セルフォントが行番号に依存しない場合は、常にif(cell == nil)の内部に配置する必要があります。

于 2013-02-05T11:40:36.180 に答える