获取UIScrollView中最后一个UIButton的原点x

时间:2012-06-23 19:00:40

标签: uiscrollview uibutton frame subview

我想知道是否可以获取最后一个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);
}

1 个答案:

答案 0 :(得分: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);
    }
}