0

我注意到 UIScrollView 的一些奇怪行为。

在一个新的 XCode(OS X 10.8.4 上的 4.6.2)iOS 项目中,我只添加了一个 RootViewController,并带有一行自定义代码:添加 UIScrollView 作为子视图

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self.view addSubview:[[UIScrollView alloc] initWithFrame:self.view.bounds]];
}

然后在触摸屏幕一次后,当我检查 lldb 中的视图层次结构时,输出如下。

(lldb) po [[UIWindow keyWindow] recursiveDescription]
$0 = 0x07126f10 <UIWindow: 0x7528660; frame = (0 0; 320 568); layer = <UIWindowLayer: 0x7528730>>
   | <UIView: 0x7668580; frame = (0 20; 320 548); autoresize = W+H; layer = <CALayer: 0x7668910>>
   |    | <UIScrollView: 0x7666200; frame = (0 0; 320 548); clipsToBounds = YES; gestureRecognizers = <NSArray: 0x7666df0>; layer = <CALayer: 0x76624f0>; contentOffset: {0, 0}>
   |    |    | <UIImageView: 0x11121a30; frame = (313 541; 7 7); alpha = 0; opaque = NO; autoresize = TM; userInteractionEnabled = NO; layer = <CALayer: 0x11121b60>> - (null)
   |    |    | <UIImageView: 0x11121bd0; frame = (313 541; 7 7); alpha = 0; opaque = NO; autoresize = LM; userInteractionEnabled = NO; layer = <CALayer: 0x11121c70>> - (null)

突然 UIScrollView 有两个我自己没有添加的子视图。这发生在模拟器和设备上(也包括 iPhone 和 iPad)。

所以我的问题是:这是正常行为吗?如果是这样,为什么会这样?

4

2 回答 2

0

这可能是滚动指示器。这些细节并不重要,因为您应该使用滚动视图的 .contentView 来保存您自己的子视图。

于 2013-06-14T23:33:01.030 回答
0

它们是滚动指示器。一个 UIImageView 用于水平指示器,另一个用于垂直指示器。

于 2013-06-14T23:38:40.850 回答