我正在我的tableview上制作自定义标题视图。自定义视图上有一个渐变。
我只希望该渐变显示它是唯一可见的标题。
因此,如果用户正在滚动并碰巧看到tableview的两个部分,则tableview上的第二部分不应该有渐变。
这样做的最佳方法是什么?
答案 0 :(得分:0)
以下是一些想法:
也许在你的表的委托中,你可以缓存标题视图,每次请求一个,查看它的同行,看看它们是否在屏幕上(由UIView的.window属性确定为非零)。
- (UIView *)tableView:tableView viewForHeaderInSection:section {
if([_headerViews objectAtIndex:section-1].window || [_headerViews objectAtIndex:section+1].window) {
// there are peers on screen
} else {
// this is the only one onscreen
}
}
这只是示例代码,并不能确保视图正确初始化等等只是一个想法。