【问题标题】:How can I reproduce the standard header for a plain UITableView如何重现普通 UITableView 的标准标题
【发布时间】:2009-02-26 11:50:18
【问题描述】:

我的 iPhoneApp 中有一个普通的 UITableView。我想更改标题文本的字体大小。 我知道这是不可能的,我需要使用自己的标签创建自定义标题。

我只是想知道是否有人知道如何重现类似于标准的标题(使用相同的背景图像等...)?我在任何地方都找不到背景图片..

最好的问候, 乔纳森

【问题讨论】:

    标签: iphone uitableview header


    【解决方案1】:

    你正在寻找[UIColor groupTableViewBackgroundColor]:

    [view setBackgroundColor:[UIColor groupTableViewBackgroundColor]];
    

    【讨论】:

    • 对不起,我想我解释错了。我的意思是 UITableView 的普通模式下的部分标题(蓝色背景)。它似乎是图像而不是颜色。我对图形不太擅长,所以我想知道是否可以在某个地方找到图像以重复使用它...问候,乔纳森
    • 嗯,我不知道你能不能得到那个图像,但即使你能得到,它也可能是固定大小的,所以你不想使用它。
    【解决方案2】:

    它不会拉伸得很高,因为它看起来很糟糕,但这可以让你摆脱躲闪,创建一个使用原始标题图形的可拉伸图像(任何 iphone 模板 png/psd 都有这些易于提取的) .

    然后

    UIImage *image = [UIImage imageNamed:@"tableHeader.png"];
    UIImage *stretchImage = [image stretchableImageWithLeftCapWidth:5.0 topCapHeight:2.0];
    UIImageView *backgroundImage = [[UIImageView alloc] initWithFrame:frame];
    [backgroundImage setImage:stretchImage];
    

    并将其作为您在您的构造的 UIView 的一部分返回:

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

    方法或(更好)将其添加为您在该方法中返回的任何 UIView 子类实例的背景。

    很明显,任何宽度都可以,我发现我可以将它提高到 55 像素高,而不会看起来很糟糕。最好的答案是复制渐变。虽然我太讨厌了:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-14
      • 1970-01-01
      • 2020-01-16
      • 1970-01-01
      • 2011-05-17
      • 1970-01-01
      • 2014-04-17
      • 1970-01-01
      相关资源
      最近更新 更多