0

我花了几个小时试图解决我的问题,但我自己找不到解决方案。我有一些代码,将 UIView 添加到我的滚动视图中:

- (void) loadSpareparts:(VitoParts*) parts{
    data = [VitoServer fetchPartList:parts];

    int itemHeight = 100;
    [scrollView setContentSize:CGSizeMake(scrollView.frame.size.width, (data.count * itemHeight))];

    NSLog(@"Item count: %d", data.count);

    for (int i=0; i<data.count; i++) {
        VitoPart *sparepart = [data objectAtIndex:i];
        VIOnePart *partView = [[VIOnePart alloc] init];

        [partView setFrame:CGRectMake (0, (i * itemHeight), scrollView.frame.size.width, itemHeight)];

        [partView setData:sparepart];
        [scrollView addSubview:partView];
        //        [self.view addSubview:partView];
    }

    NSLog(@"In scrollView: %d", scrollView.subviews.count);
}

但它不起作用。我的最后一条日志消息告诉我们,. 中有哪些 0 项scrollView。如果我添加partViewself.view,它工作正常。IBOutlet 也连接到 XIB 编辑器中的 ScrollView。

我应该在哪里尝试找到解决方案?

谢谢。

4

1 回答 1

2

您是在之前还是之后调用此方法-(void)viewDidLoad?如果之前,视图将不会加载,因此scrollView将为零。

于 2013-01-02T17:53:10.360 回答