Ios ScrollView和子视图在代码和情节提要之间不匹配?

Ios ScrollView和子视图在代码和情节提要之间不匹配?,ios,objective-c,storyboard,interface-builder,Ios,Objective C,Storyboard,Interface Builder,我已经在我的故事板文件中创建了一个UIScrollView,并将其正确连接到我的控制器IBOutlet属性。下面是它在故事板中的样子: UIScrollView UIView 1 UIView 2 UIView 3 约束条件 ... 这是我在viewDidLoad上运行的代码: - (void)viewDidLoad { [super viewDidLoad]; NSLog(@"COUNT: %d", [self.scrollView subviews].count);

我已经在我的故事板文件中创建了一个UIScrollView,并将其正确连接到我的控制器IBOutlet属性。下面是它在故事板中的样子:

UIScrollView UIView 1 UIView 2 UIView 3 约束条件 ... 这是我在viewDidLoad上运行的代码:

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"COUNT: %d", [self.scrollView subviews].count);
    for(UIView *v in [self.scrollView subviews]) {
        NSLog(@"View: %@", v);
    }
}
因此,我希望在控制台日志中看到我的3个视图。但是,它正在打印一些完全不相关的2 UIImageView

2014-09-17 13:06:33.155 Project[6333:652705] COUNT: 2
2014-09-17 13:06:33.156 Project[6333:652705] View: <UIImageView: 0x7b094460; frame = (233 124.5; 7 3.5); alpha = 0; opaque = NO; autoresize = TM; userInteractionEnabled = NO; layer = <CALayer: 0x7b0947c0>>
2014-09-17 13:06:33.156 Project[6333:652705] View: <UIImageView: 0x7b094fb0; frame = (236.5 121; 3.5 7); alpha = 0; opaque = NO; autoresize = LM; userInteractionEnabled = NO; layer = <CALayer: 0x7b095080>>

我可能在这里明显做错了什么,但Interface Builder或插座连接本身中是否存在某种缓存?

图像视图是滚动视图边缘的滚动条。调用viewDidLoad时,视图层次结构尚未完全安装。将代码移到awakeFromNib方法中,注意图像视图-通常不依赖子视图,保留对要访问的视图的显式引用。

它们是UIView还是UIImageView?您确定它们在Connection Inspector中被正确设置为IBOutlet吗?有UIImageView和垂直和垂直滚动条horizontal@timpone它们绝对是一种观点。我没有将它们连接到我的控制器。我只将我的UIScrollView连接到我的控制器,我希望该实例会显示其子视图,但情况似乎并非如此。awakeFromNib不会显示我的滚动视图子视图,即使它也不会显示UIImageView,现在子视图计数为0。我真的不想连接我想从代码中访问的每个视图。也许我所需要的毕竟是不可能的,不确定。从问题上看不出来,但IBOutlets应该全部由viewDidLoad配置-正确吗?如果您只想枚举子视图,请查看Outlets集合。你看到屏幕上的子视图了吗?@timpone,没有,只有在awakeFromNib