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

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

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

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

[self.view addSubview:halfView];

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

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

这是我希望子视图在iPhone屏幕上的外观:

最佳答案

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

你只要把身高除以二

您可能还应该将320更改为self.view.bounds.size.width
我建议阅读这篇文章,以真正了解UIViews并与之合作:
UIView frame, bounds and center

关于ios - 以编程方式创建覆盖iPhone屏幕顶部50%的 subview ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21844463/

10-09 02:24