0

オブジェクトの配列(画像とテキストを含む)があり、配列を反復処理して画像をに追加するとUIImageView(その後に追加されますUIScrollView)、すべてうまく機能し、各画像はに固有のもので追加されUIImageViewますUIScrollView.

ただし、タグを追加するとすぐに、UIImageViewすべての画像が追加された内にレンダリングされるわけではありませんUIImageView(これは、UIScrollView一部が欠落しており、一部が表示されています)。

タグを削除すると、すべてうまくいきますか? 私が把握していないタグが付いているものはありますか? どんな助けでも大歓迎です。

for (Article *al in articleLists){

        CGRect frame;
        frame.origin.x = self.FeaturedView.frame.size.width * counter;
        frame.origin.y = 0;
        frame.size = self.FeaturedView.frame.size;

        CGRect frameTextArea;
        frameTextArea.origin.x = self.FeaturedView.frame.size.width * counter;
        frameTextArea.origin.y = (self.FeaturedView.frame.size.height / 2) + 10;
        frameTextArea.size.width = self.FeaturedView.frame.size.width;
        frameTextArea.size.height = (self.FeaturedView.frame.size.height / 2) - 20;

        CGRect frameTextLabel;
        frameTextLabel.origin.x = (self.FeaturedView.frame.size.width * counter) + 20;
        frameTextLabel.origin.y = (self.FeaturedView.frame.size.height / 2) + 10;
        frameTextLabel.size.width = self.FeaturedView.frame.size.width - 40;
        frameTextLabel.size.height = (self.FeaturedView.frame.size.height / 2) - 20;

        if (al.imageURL != NULL){

            UIImageView *imageView = [[UIImageView alloc] initWithFrame:frame];
            imageView.contentMode = UIViewContentModeScaleAspectFill;
            //imageView.tag = counter;
            imageView.image = al.imageArticle;
            UITapGestureRecognizer *imageTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapGestureCaptured:)];
            [imageView addGestureRecognizer:imageTap];
            imageView.userInteractionEnabled = YES;

            UIView *viewTextArea = [[UIView alloc]initWithFrame:frameTextArea];
            viewTextArea.backgroundColor = [UIColor blackColor];
            viewTextArea.alpha = 0.9;

            UILabel *textLabel = [[UILabel alloc] initWithFrame:frameTextLabel];
            textLabel.textColor = [UIColor whiteColor];
            textLabel.backgroundColor = [UIColor clearColor];
            textLabel.numberOfLines = 2;
            textLabel.font = [UIFont fontWithName:@"Droid Sans" size:18];
            textLabel.text = [al.currentTitle uppercaseString];

            [self.FeaturedView addSubview:imageView];
            [self.FeaturedView addSubview:viewTextArea];
            [self.FeaturedView addSubview:textLabel];

        }
        else{
            //UIImage *image = [UIImage imageNamed:@"ArticlePlaceholder.png"];
        }

        counter++;
    }
4

0 に答える 0