0

我想在触摸时隐藏导航栏和标签栏并在 uitableview 上移动,打击代码:viewForHeaderInSection 中的 _headView 没问题。但有时在块执行后,_headView 是可见的

if(_headView)
    _headView.hidden = YES; //
[UIView animateWithDuration:0.5 animations:^{
    scrollView.frame = rect;
    _vc.navigationController.navigationBar.top -= navigationBarHeight;
    tabView.top =  SCREEN_HEIGHT;

} completion:^(BOOL finished) {
}];

如果我将隐藏代码移动到完成块,它运行正常,但在 0.5 秒后隐藏,它很慢。

[UIView animateWithDuration:0.5 animations:^{
    scrollView.frame = rect;
    _vc.navigationController.navigationBar.top -= navigationBarHeight;
    tabView.top =  SCREEN_HEIGHT;

} completion:^(BOOL finished) {
    if(_headView)
        _headView.hidden = YES;  //Delay after 0.5s.
}];

请帮助我,谢谢。

4

1 回答 1

0

我们有一个委托方法来设置部分的高度UITableView

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

只需为此返回 0,用于隐藏标题。

于 2013-04-23T10:32:00.377 回答