0

StoryBoard的配置为 iPhone4 分辨率,在 iPhone 5 上运行时,我希望 UIView 变得更大(高度和宽度)。

现在的问题是,视野只会越来越高,不会越来越宽。为了实现这一点,自动调整大小配置应该是什么?

在此处输入图像描述 在此处输入图像描述

4

2 回答 2

1

参考屏幕的高度并使用一些填充值来设置您的视图框架。下面是设置 UIView 框架的代码yourShapeView

// Get the frame of the screen
CGRect screenFrame = [[UIScreen mainScreen] bounds];

// Set padding from the top and bottom of the shape
CGFloat verticalPadding = 40.0f;
CGFloat horizontalPadding = 20.0f;

// Get the height/width values
CGFloat height = screenFrame.size.height - (verticalPadding * 2);
CGFloat width = screenFrame.size.width - (horizontalPadding * 2);

// Set the size of your shape based on the height and padding
yourShapeView.frame = CGRectMake(horizontalPadding, verticalPadding, width, height);
于 2013-07-13T01:44:50.367 回答
1

您可能需要使用重写方法的子类UIViewsetFrame:捕获帧更改。

- (void)setFrame:(CGRect)frame
{
    frame.size.width = frame.size.height; // Make the *width* always equal to the *height*. Logic could go here, etc.
    [super setFrame:frame]
}
于 2013-07-12T19:20:28.953 回答