2015-09-11 163 views
0

我有一个名为CalendarUIView的UIView。我把它放在一个叫做MainHubViewController的视图控制器里面。我想这样做,以便CalendarUIView的高度和宽度是父级(MainHubViewController)高度和宽度的一半。因此,例如,MainHubViewController的尺寸为400 500。然后我想CalendarUIVIew的尺寸为250Xcode:将UIView高度和宽度设置为SuperView(主视图)的一半高度和宽度

为200我要把它放到我的viewDidLoad方法并没有奏效:(

self.CalendarUIView.bounds.size.height = self.view.bounds.size.height/2.0f; 

任何解决方案? 感谢

回答

0

要改变你可以做到这一点的框架,

view.frame.size = CGSize(width: someW, height: someH) 

但是,你会保持相同的Ø rigin点如此与偏离中心。

因此,要么改变中心点,使用.center视图来匹配你的超级视图。也可以设置从一开始的框架,有需要的CGRect

PS对不起它在雨燕的想法是一样的

0

您应该使用CGSizeMake

self.CalendarUIView.frame.size = CGSizeMake(your width, your height); 
0

这应该给你的想法

//Get the parent size 
CGRect *containerFrame = self.MainHubViewController.frame; 
float height = containerFrame.size.height; 
float width = containerFrame.size.width; 


CGRect newFrame = self.CalendarUIView.frame; 
newFrame.size = CGSizeMake(width/2, height/2); 

self.CalendarUIView.frame = newFrame; 
+0

奇怪的是,当我实现你的方法时,Xcode会抛出一个错误:表达式是不可分配的。 :( – Fez