0

我正在为 iPhone 5 屏幕更新我的应用程序。听起来 setAutoresizingMask 可以很好地用于定位对象(而不是硬编码 alt 坐标),但我似乎无法让它工作。

我的应用程序不旋转,我只想将此图像加载固定到底部,用于 480 或 568 高屏幕。

这是我的简单尝试。将非常感谢您的建议。谢谢。

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.view.autoresizesSubviews = YES;

    UIImage *getImg = [UIImage imageNamed:@"footer.jpg"];
    UIImageView *footer = [[UIImageView alloc] initWithImage:getImg];
    [footer setFrame:CGRectMake(0,0,302,50)];
    [footer setAutoresizingMask:UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin];    

    [self.view addSubview:footer];
}

(我相信这个 setAutoresizingMask 应该将图像设置为左下角。)

4

1 回答 1

2

自动调整掩码不会影响控件的初始位置,它们只会影响其父视图更改其边界时位置的更新方式。换句话说,设置新的自动调整掩码的行为永远不会更新控件的位置。

因此,您仍然需要注意最初将控件放在正确的位置。您可以使用界面生成器轻松做到这一点。如果您以编程方式布置界面,则应通过查询其bounds成员变量而不是直接硬编码测量值,将控件相对于其父视图的边界放置。从那时起,您可以保留自动调整大小掩码的更新。

于 2012-09-24T16:02:32.320 回答