当我在Interface Builder中创建标签并将插座挂钩到viewController时,并按照以下方式在viewDidLoad中记录标签:
NSLog(@“label:%@”,self.label);
它给了我一个(0,0,0,0)的框架。 self.view给了我一个大小超过0.一个较旧的程序的标签也给我一个大小超过0.它将记录标签中的文本,所以它是正确的连接。这是Xcode 4.5的变化吗?如何访问我在Interface Builder中设置的帧?
这是日志:
UILabel:0x754e1b0; frame =(0 0; 0 0); text ='这是一个标签'; clipsToBounds = YES; opaque = NO; autoresize = TM + BM; userInteractionEnabled = NO; layer = ...
答案 0 :(得分:0)
试试这个:
NSLog(@"Label Frame: %@",NSStringFromCGRect(self.label.frame));
答案 1 :(得分:0)
通常,viewDidLoad
中的框架布局不可靠。在笔尖的情况下,这应该不是问题。您是否有机会使用AutoLayout?
请同时在viewWillAppear
中记录相同的值,这肯定会有正确的值。我通常使用viewWillLoad
来启动我的UI元素,并使用viewWillLoad
来正确放置它们。