UITableView自定义标题(如FoodSpotting应用程序)

Apo*_*llo 8 iphone objective-c uitableview ios

在此输入图像描述

有人可以解释这个应用程序(FoodSpotting)如何创建自定义节标题?它有一个半透明的黑色背景,用户的图像,以及一些不错的文本(毫无疑问从服务器加载).我的两个大问题是:

1.应用程序如何在节标题上获得漂亮的黑色半透明效果? 2.他们如何将标题附加的小三角箭头?

我可以基于使用节标题的自定义视图来弄清楚其他所有内容.

ckh*_*han 22

节头是一个UIView就像任何其他.您可以根据需要使用Interface Builder创建它美观,复杂或精细,等等.您的表委托tableView:viewForheaderInSection负责返回它,就像它对其他单元格行一样.

至于小三角形:是的,这让我们扔了一点(我们想要在我们的应用程序中有类似的东西),直到我们发现你可以通过"躺着"它的高度来重叠视图与行重叠:即tableView:heightForHeaderInSection:返回略小于它的值它实际上是.可能不是"正确"的方式,但对我们来说非常好.像这样:

在此输入图像描述

所以标题实际上是一个完美的矩形,大多是透明的底部,有一个小的三角形"偷看":

在此输入图像描述

告诉iOS标题是80px高,如下所示:

- (CGFloat) tableView:(UITableView *) tableView 
  heightForHeaderInSection:(NSInteger) section {
    return 80;
  }
Run Code Online (Sandbox Code Playgroud)

并且它将开始以80px绘制"食物"行.因为标题位于顶部,并且因为大多数标题底部除了箭头之外是透明的,所以应该得到这种效果.