1

我有一个UIView使用GCD. 它正在运行,iOS7UIImageViews 需要永远显示。

这是我正在使用的示例代码。

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 120)];

for (int i = 0; i < 200; i++) {
    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(77 * i, 0, 77, 88)];
    [scrollView addSubview:view];

    dispatch_queue_t queue = dispatch_queue_create("image", NULL);
    dispatch_async(queue, ^{
        UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"photo@hd.png"]];
        imageView.frame = CGRectMake(0, 0, 77, 88);
        [view addSubview:imageView];

        dispatch_async(dispatch_get_main_queue(), ^{
            UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 0, 0)];
            label.text = [NSString stringWithFormat:@"Name %d", i];
            [label sizeToFit];
            label.center = CGPointMake(38.5, 20);
            [imageView addSubview:label];
        });
    });
    [scrollView setContentSize:CGSizeMake(view.frame.size.width * (i+1), view.frame.size.height)];
}

[self.view addSubview:scrollView];

顺便说一句,我正在创建许多UIViews,这就是它被线程化的原因。最多约 200 次观看。

我应该如何使它工作?正在调用调度块内的方法,只是UIView没有显示 s。

谢谢!

4

0 回答 0