我想手动设置子视图的框架。
所以我只用CGRectMake创建一个CGRect,并使用新的CGRect作为子视图的框架。问题是子视图没有显示出来
当我只使用父视图的view.bounds属性并将其作为框架分配给子视图时,所有内容都会显示出来
我还确保框架在显示区域内。
frame = CGRectMake(0, 0, 100, 100);
[self.view addSubview:[[UIView alloc] initWithFrame:frame]];
答案 0 :(得分:1)
设置子视图框架的好方法是
subview.frame = CGRectMake(0, 0,
CGRectGetWidth(self.view.bounds),
CGRectGetHeight(self.view.bounds));
请参阅link
所有值小于CGRectGetWidth(self.view.bounds)& CGRectGetHeight(self.view.bounds)应该可以正常工作
答案 1 :(得分:1)
您问题中的代码将创建一个您没有参考的视图。这意味着它没有背景颜色,内容或其他方法来查看它,您无法设置它。您已添加视图,但它是不可见的。
在将视图添加为子视图之前,首先创建并配置视图,将其分配给局部变量。作为此配置的一部分,为视图提供背景颜色或某些子视图。