0

ヘッダーのフォントの色を変更したいので、viewForHeaderInSection を委譲しています。

- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
     UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 30)];

     UILabel *headerLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 30)];

    [headerLabel setBackgroundColor:[UIColor whiteColor]];
    [headerLabel setTextColor:[UIColor blackColor]];
    [headerView addSubview:headerLabel];

    return headerView;
 }

背景色は設定されていますが、テキストは透明にするのが好きで、何もありません。

backgroundColor にコメントしようとしましたが、白は消えますが、テキストは消えません。

すべてのブロックにコメントを付けようとすると、テキストがデフォルトの色で表示されます。

私の間違いはどこですか?前もって感謝します

私はそれを見つけました、私は逃しました:

[headerLabel setText: @"myText"];

のようだ:

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection: (NSInteger)section

viewForHeaderInSection の実装時には呼び出されません。

ありがとう!

4

1 に答える 1

0

うまくいけば、UITableViewDelegate プロトコルのこのメソッドから始められます。

- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
{
UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 30)] autorelease];
 if (section == integerRepresentingYourSectionOfInterest)
 [headerView setBackgroundColor:[UIColor redColor]];
  else 
 [headerView setBackgroundColor:[UIColor clearColor]];
  return headerView;
}

[UIColor redColor] を任意の UIColor に置き換えます。headerView のサイズを調整することもできます。

于 2012-08-29T16:28:30.240 に答える