1

如何更改表格视图部分中文本的位置?我使用 viewForHeaderInSection:Section 并在那里创建这样的东西:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 300, 30)];
    label.backgroundColor = [UIColor blackColor];
    label.textColor = [UIColor whiteColor];
    label.font = [UIFont fontWithName:@"Gotham-Bold" size:17.0f];

    id <NSFetchedResultsSectionInfo> sectionInfo = [[self.comlpetedFetchedResultsController sections] objectAtIndex:section];
    label.text = [@" " stringByAppendingString:[sectionInfo name]];
    return label;
}

UILabel 框架中的参数大小无关紧要,我总是得到相同的结果:

在此处输入图像描述

如何在 UILabel 中垂直居中文本?谢谢

4

3 回答 3

4

尝试

[yourLabel setNumberOfLines:0];
[yourLabel sizeToFit];
[yourLabel setContentMode:UIViewContentModeCenter];
于 2013-01-23T15:44:17.730 回答
3

将标签放在 UIView 中,然后返回视图:

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 30)];
[view addSubview:label];
return view;

确保实现以下方法:

-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section

否则你的视图将只是在单元格的顶部。

于 2013-01-23T15:56:07.097 回答
2

通过这个链接:NSTextAlignment

下面给出的代码片段也可以帮助你

  UILabel *myLabel = [[UILabel alloc] init];

  [myLabel setText:@"Abc"];
  [myLabel setTextAlignment:NSTextAlignmentCenter];
于 2013-01-23T15:43:46.493 回答