0

我正在尝试为数组中的每个项目添加一个单独的 UiImageView 这是我到目前为止所拥有的

_shapeArray = [NSArray arrayWithObjects:@"cloud.png",@"star.png", nil];

    for (int i = 0; i < [_shapeArray count]; i++){
        // I make a UIImage, which I will draw later
        UIImage* image = [UIImage imageNamed:[NSString stringWithFormat:@"%@",[_shapeArray objectAtIndex:i]]];

        UIImageView* blockView = [[UIImageView alloc] initWithImage:image];

        blockView.frame = CGRectMake(arc4random()%320, arc4random()%460, image.size.width, image.size.height);

        [self.view addSubview:blockView];

    }

但正如你所知道的,它只是添加了数组中的最后一个图像。我想不出一种方法可以将数组对象编号添加到 UIImageView 的名称中。也许我走错了路,如果是这样,最好的方法是什么?

4

2 回答 2

1

此代码有效,但您需要确保以下几点:
- 文件名确实存在于您的包中(检查大写/小写),如果没有,您不会收到错误消息,但它会不显示图片
- 图片尺寸不要太大,不要互相覆盖

于 2012-11-16T02:40:05.983 回答
1

您正在同一帧中添加图像。

   blockView.frame = CGRectMake(arc4random()%320+SomeXValue, arc4random()%460+SomeYvalue, image.size.width, image.size.height);
于 2012-11-16T03:38:41.040 回答