2

我有一个子视图,我一直在通过使用 frame 属性并将其值设置为 CGRectMake 函数的参数值来自定义它的大小。

我一直在缓慢但肯定地更改 CGRectMake 参数并重新运行应用程序以使子视图位于屏幕上的正确位置,但我知道必须有一种更简单的方法。

这是我目前正在做的事情:

UIImageView *halfView = [[UIImageView alloc]initWithImage:image];

[self.view addSubview:halfView];

halfView.frame = CGRectMake(0, 0, 320, 270);

有没有办法让我不必手动将这 4 个参数输入到 CGRectMake 中,而只需将其设置为屏幕的前 50%?

这是我希望子视图在 iphone 屏幕上的样子:

在此处输入图像描述

4

1 回答 1

7
halfView.frame = CGRectMake(0, 0, 320, self.view.bounds.size.height/2);

您只需将高度除以二

您还应该更改320self.view.bounds.size.width

我建议阅读这篇文章以真正掌握 UIView 并使用它们: UIView 框架、边界和中心

于 2014-02-18T04:36:14.823 回答