0

我想知道是否可以获得最后一个 UIButton 的原点 x,它是 UIScrollView 的子视图。

我试过这段代码,但它不起作用,因为如果我 NSLog 它的帧它返回 0:

-(void)myMethod 
{
    UIButton *lastButton = [[toggleScroll subviews]lastObject];

    NSLog(@"Button frame %f", lastButton.frame.size.width);
    NSLog(@"Button origin %f", lastButton.frame.origin.x);
}
4

1 回答 1

0

这实际上取决于您所说的“最后”是什么意思。数组的顺序subviews与屏幕上每个子视图的 X/Y 位置无关。我假设您实际上想要所有按钮原点 X 坐标的最大 X 坐标:

CGFloat xMax = -HUGE_VALF;
for (UIView *subview in toggleScroll.subviews) {
    if ([subview isKindOfClass:[UIButton class]]) {
        xMax = MAX(xMax, subview.frame.origin.x);
    }
}
于 2012-06-23T19:08:59.963 回答