iOS:未添加到父UIView的子视图?

时间:2011-05-08 10:48:00

标签: ios ipad

我有一个包含多个子视图的父UIView,但这些子视图不可见,并且它们不会重新调整手势,所以我担心它们没有被添加......或者出现了问题。

子视图类是ImageWithCaptionView,它是UIView的子类。我已经创建了一个ImageWithCaptionView.xib文件并连接了2个IBOutlets:UIImageView和UILabel。

我确定xib文件与ImageWithCaptionView类链接,因为我已经连接了IBOutlets。

我在这里做错了什么?为什么我看不到子视图?这是代码:

    ImageWithCaptionView* imageWithCaptionView = [[ImageWithCaptionView alloc] initWithFrame:CGRectMake(offset, 0.0, 320.0, 330.0)];


    UIGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];

    [(UITapGestureRecognizer *)recognizer setNumberOfTouchesRequired:1];

    imageWithCaptionView.userInteractionEnabled = YES;
    [imageWithCaptionView addGestureRecognizer:recognizer];
    recognizer.delegate = self;
    [recognizer release];

    dispatch_queue_t downloadQueue = dispatch_queue_create("Flickr downloader in EventsTableView", NULL);

    dispatch_async(downloadQueue, ^{

        NSData *image = [FlickrFetcher imageDataFromPhotoId:object]; 

        if(image) {

            //I'm sure this code, inside if statement runs
            imageWithCaptionView.imageView.image = [UIImage imageWithData: image]; 

        }
    });

    imageWithCaptionView.label.text = @"test label"; 


    dispatch_release(downloadQueue);

    [cell addSubview:imageWithCaptionView];
    [imageWithCaptionView release];

感谢

更新,记录:

   2011-05-08 14:34:40.915 FlickrBrowser[26524:207] (null)
   2011-05-08 14:34:40.917 FlickrBrowser[26524:207] {{nan, 2.34559e-38}, {-1.9979, 2.22702e-38}}
   2011-05-08 14:34:40.920 FlickrBrowser[26524:207] (null)
   2011-05-08 14:34:40.923 FlickrBrowser[26524:207] {{5.31614e-36, 5.31614e-36}, {6.74717e-39, 6.74717e

1 个答案:

答案 0 :(得分:1)

您似乎没有在任何地方设置子视图的框架,因此默认情况下它们都没有框架,这就是它们在父视图中显示为不可见的原因。