为数组中的每个项添加单独的UIImageView

时间:2012-11-16 01:55:03

标签: objective-c ios uiimageview nsarray

我正在尝试为数组中的每个项添加一个单独的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的名称。也许我会以错误的方式去做,如果是这样,最好的方式是什么?

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

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

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