1

scrollView我在调试为什么我不会滚动时遇到了这个问题。对于上下文,我的布局结构是:

-ScrollView
  - View
     - labels, images, buttons

更新scrollView.contentSize以匹配(子)视图不起作用,所以我放入了一些调试语句。结果是视图的框架大小为 0,当我NSLog描述它时为 0,但如果我运行调试器recursiveDescription,它会显示不同。

知道为什么,这是否会影响我的滚动不起作用的原因?

NSLog(@"%@", [self.view description])

2012-11-15 17:16:46.707 Comparo[65731:11303] 开始:<UIView: 0x7144590 ; 帧 = (0 0; 0 0 ); 自动调整大小 = TM+BM;层 = <CALayer: 0x714b4f0>>

2012-11-15 17:16:46.708 比较 [65731:11303] 1: <UIView: 0x7144590; 帧 = (0 0; 0 0); 自动调整大小 = TM+BM;层 = <CALayer: 0x714b4f0>>

2012-11-15 17:16:46.771 比较 [65731:11303] 2: <UIView: 0x7144590; 帧 = (0 0; 0 0); 自动调整大小 = TM+BM;层 = <CALayer: 0x714b4f0>>

2012-11-15 17:16:46.771 比较 [65731:11303] 3: <UIView: 0x7144590; 帧 = (0 0; 0 0); 自动调整大小 = TM+BM;层 = <CALayer: 0x714b4f0>>

2012-11-15 17:16:46.772 比较 [65731:11303] 4: <UIView: 0x7144590; 帧 = (0 0; 0 0); 自动调整大小 = TM+BM;层 = <CALayer: 0x714b4f0>>

调试器输出:(lldb) po [[UIApp keyWindow] recursiveDescription]

...

| | | | <UIScrollView: 0x71494d0; 帧 = (0 0; 320 504); clipsToBounds = YES; 自动调整大小 = TM+BM;手势识别器 = <NSArray: 0x75d3bb0>; 层 = <CALayer: 0x71f9ed0>; 内容偏移:{0, 0}>

| | | | | <UIView: 0x7144590 ; 帧=(0 0;320 523);自动调整大小 = TM+BM;层 = <CALayer: 0x714b4f0>>

谢谢。

4

1 回答 1

1

谢谢罗伯!

您认为这是一个时间问题是正确的,并且无法保证帧将在 viewDidLoad (我有我的 NSLog 语句)中完成。我将语句移动到 viewDidAppear:,这是用户首先能够与它们交互并滚动的地方,现在数字匹配了。

奖励:也解决了我的滚动问题。

于 2012-11-16T19:03:30.617 回答