0

我被要求在类似于滚动视图的对象内的图像上放置一些按钮。

添加这些按钮没有问题,但是当我将图像捏得更小或更大时,按钮相对于图像的位置正在改变。

我怎样才能让它留下来?

有没有办法使用myButton.frame = CGRectMake(30%,30%,x,y);或类似的东西?

4

1 回答 1

0

不能CGRectMake以百分比指定参数。我相信您的问题的解决方案在于UIViewAutoResizingMask财产。将其设置为UIViewAutoResizingNone可能会奏效。

myButton.autoresizingMask = UIViewAutoresizingNone;

在任何情况下,按钮都不应该将 resizingMask 值设置为任何边距,否则它们将保持边距宽度不变。

编辑: 另一种方法是覆盖 layoutSubviews 方法,当你的 imageView/scrollView 调整大小时应该调用它:

- (void) layoutSubviews
{
    [super layoutSubviews];

    for (UIView *view in self.subviews) {   // Go through all subviews

        if (view == scrollView) {  // Find the scrollView object you want
           //then find the scrollView's frame size and reposition the button objects

        }
    }
}
于 2013-04-22T08:28:43.170 回答