【问题标题】:UITableVIew inside UIScrollView does not reloadUIScrollView 内的 UITableVIew 不会重新加载
【发布时间】:2014-07-28 09:03:10
【问题描述】:

我有一个UIScrollView,底部有一个UITableVIew。这个UITableView 动态上下增长,所以我不知道大小,直到我按下“update button”。

当我按下“更新按钮”时,我会更新 UITableView frame 和 UIScrollView height。 奇怪的是 UITableView 在我按下 2 次更新按钮之前是不可见的......

有人看到错误吗?我尝试了所有方法,例如setNeedsDisplay 或致电[self viewDidLoad],但没有成功。

这是我的代码:

    -(IBAction)update:(id)sender {
[[ApiHandler instance] update:self.item.hash complete:^(NSInteger responseCode,  NSInteger status, NSArray *comments, NSDictionary *reason) {
    if(responseCode == 200) {
        [self.item setStatus:status];
        [self.item setComments:comments];

        [self initViews];  
    } 
}];

}

- (void)initViews {

if(self.item.comments.count > 0) {
    [self.commentsTableView setHidden:NO];
}else {
    [self.commentsTableView setHidden:YES];
}

NSInteger numOfRows = self.item.comments.count;
long tableHeight = numOfRows * 110;

int height = (650 + tableHeight);
[self.constraint setConstant:height];  //Height constraint for the UIView inside the UIScrollView.

CGRect tableFrame = [self.commentsTableView frame];
tableFrame.size.height = tableHeight;
[self.commentsTableView setFrame:tableFrame];
[self.commentsTableView reloadData];

}

【问题讨论】:

    标签: ios objective-c iphone uitableview uiscrollview


    【解决方案1】:

    我解决了。我刚刚向 UITableView 高度添加了一个约束,如下所示:

    @property (weak, nonatomic) IBOutlet NSLayoutConstraint *commentsTableHeightConstraint;
    

    然后我更新约束:

    - (void)initViews {
    
    if(self.item.comments.count > 0) {
        [self.commentsTableView setHidden:NO];
    }else {
        [self.commentsTableView setHidden:YES];
    }
    
    NSInteger numOfRows = self.item.comments.count;
    long tableHeight = numOfRows * 110;
    
    int height = (650 + tableHeight);
    [self.constraint setConstant:height];
    
    [UIView animateWithDuration:0.25 animations:^{
        self.commentsTableHeightConstraint.constant = tableHeight;
        [self.commentsTableView reloadData];
        [self.view needsUpdateConstraints];
    }];
    

    }

    【讨论】:

      猜你喜欢
      • 2011-09-18
      • 2013-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多