我正在尝试以编程方式创建UIImageView
并将其放置在另一个与IB定位的静态控件附近。我的代码就像:
iv.frame = CGRectMake(cell.positionedLabel.bounds.origin.x - 20, cell.positionedLabel.bounds.size.height, 26, 26);
但添加IB的标签的x始终为0.0。
我在cellForRowAtIndexPath
中这样做。
有谁知道为什么没有为这个项目设置界限?感谢。
答案 0 :(得分:2)
边界起点几乎总是零。唯一常见的异常是UIScrollView,它的子类将设置一个非零边界原点来抵消它们的内容(这就是contentOffset的作用)。
无论如何,使用框架代替边界:cell.positionedLabel.frame.origin.x
,或者更好CGRectGetMinX(cell.positionedLabel.frame)
,因为CGRectGetMinX
将正确处理非标准CGRects(如负宽度和高度的rects)。