滚动时,在UITableView下可以看到UIView

时间:2013-10-29 09:42:53

标签: ios objective-c uitableview uiview background

我有一个放在UIView之上的UITableView。

所以基本上,它看起来像这样:
我有一个tableviewHolder,它有两个子视图
1.)UIView与其他子视图
2.)UITableView

每当用户滚动UITableView时,我希望它下面的UIView可见。 我尝试将UITableView的背景设置为清除并且可以正常工作。但是,如果tableview的背景清晰,那么当单元格的行不足以覆盖整个表格时,其下方的UIView的其他部分将是可见的。 如何在用户滚动时更改表格视图的背景颜色并仍然可以看到其下方的UIView?

1 个答案:

答案 0 :(得分:0)

使用

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView

(参考https://developer.apple.com/library/ios/documentation/uikit/reference/UIScrollViewDelegate_Protocol/Reference/UIScrollViewDelegate.html#//apple_ref/occ/intfm/UIScrollViewDelegate/scrollViewWillBeginDragging:)

当UITableView开始滚动时,将调用此方法。因此,在此方法中,将UIView设置为可见

view.setAlpha=1.0;

并在

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate

使用

将uIView再次设置为不可见
view.setAlpha=0.0;

要求您在UITableViewDelegate类中使用UIScrollViewDelegate方法。这将起作用,因为UITableViewDelegate继承自UIScrollViewDelegate。因此,UIScrollViewDelegate中的所有方法也适用于UITableViewDelegate。