Ios 奇怪的表视图高度

Ios 奇怪的表视图高度,ios,objective-c,Ios,Objective C,我想获得表视图高度,并使用KVO。我使用以下方法: [self.selectionTableView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:NULL]; } - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<N

我想获得表视图高度,并使用KVO。我使用以下方法:

    [self.selectionTableView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:NULL];

}

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context {
    if(object == self.selectionTableView && [keyPath isEqualToString:@"contentSize"]) {

        [self.backgroundView mas_updateConstraints:^(MASConstraintMaker *make) {
            make.top.equalTo(self.selectionTableView.mas_bottom);
            make.left.bottom.right.equalTo(self.view);
        }];

        NSLog(@"h? %f", self.selectionTableView.contentSize.height);

    }
}

正确的高度是102,但我想知道其他数字是从哪里来的?

使用KVO获取高度是正确的,但是如果您使用的tableview单元格具有另一个tableview,并且要将内部tableview单元格包含高度设为外部tableview单元格高度,则无法准确获取包含高度。那个么你们能解释一下你们设计的层次结构吗?@Hitesh第一张桌子在屏幕上,第二张(选择)是隐藏的(附在视图的底部到顶部,所以不可见)。稍后,它会在屏幕上显示动画。
2017-06-14 17:08:53.524 Engineering[27338:1452963] h? 1200.000000
2017-06-14 17:08:53.524 Engineering[27338:1452963] h? 1200.000000
2017-06-14 17:08:53.526 Engineering[27338:1452963] h? 1200.000000
2017-06-14 17:08:53.527 Engineering[27338:1452963] h? 1200.000000
2017-06-14 17:08:53.530 Engineering[27338:1452963] h? 834.000000
2017-06-14 17:08:53.535 Engineering[27338:1452963] h? 468.000000
2017-06-14 17:08:53.537 Engineering[27338:1452963] h? 102.000000