2011-09-23 74 views
1

这是我的代码的一部分。UIView框架设置错误,查看得到{nan,nan}起源。

NSLog(@"fr: %@", NSStringFromCGRect(frame_)); NSLog(@"org: %@", 
NSStringFromCGPoint(frame_.origin)); // cell.frame = frame_; [cell 
setFrame: frame_]; 

NSLog(@"c: %@", cell); NSLog(@"c frame: %@", 
NSStringFromCGRect(cell.frame)); 

打印输出令人惊讶。任何人都有这个想法吗?帮助和感谢。

[657:707] fr: {{350, 600}, {175, 300}} 
[657:707] org: {350, 600} 
[657:707] c: <JXUIGridViewCell: 0xf62d3c0; frame = (nan nan; 175 300); tag = 4010; animations = { position=<CABasicAnimation: 0x15b4a0>; bounds=<CABasicAnimation: 0x15b540>; }; layer = <CALayer: 0xf62d400>> 
[657:707] c frame: {{nan, nan}, {175, 300}} 
+0

你没有说你如何得到**框架**。你可以显示该代码吗? – Jim

+0

我不记得如何获得'frame_'。 NSLog打印输出是如何工作的,以告诉'frame_'中的内容。对 ? – Juguang

+0

你能解决这个问题吗?我目前拥有相同的代码,并且不知道我的代码出了什么问题。 – Alexandre

回答

2

我实际上也在为这个问题寻找答案。但是没完没了。 但事实证明,如果你在任何时候将视图的起源设置为nan,那么它将会粘住。因此它永远不会再被改变。 解决方法:切勿将视图的起源设置为nan。