我有一个带XIB的UIViewController子类,宽320宽,高400。 XIB有一个UITableView,它可以填充视图的宽度和高度。
在VC的viewDidLoad方法中,我有以下
self.contentSizeForViewInPopover = CGSizeMake(600.0, 400.0);
tableview在popover中正确显示。到目前为止都很好。
现在我以编程方式将一个UIProgressView添加到tableview单元格中,但有些东西我不明白。在cellForRowAtIndexPath方法中,我想设置UIProgressView相对于单元宽度的宽度,但是cell.frame.size.width和cell.bounds.size.width是原始的320而不是显示的实际600.
我可以使用tableview的宽度值来解决它,但我很困惑为什么值在单元级别不正确。
答案 0 :(得分:2)
似乎
中的尺寸值符合预期- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
所以我猜测cellForRowAtIndexPath
和willDisplayCell
之间是调整弹出大小的地方。