English 中文(简体)
在循环中访问许多 UIIMageView
原标题:Access many UIImageView in a for loop

我在UIView中有5个UIIMage View, 我把UIIMIView命名如下:

@property (retain, nonatomic) IBOutlet UIImageView *imgPic1;
@property (retain, nonatomic) IBOutlet UIImageView *imgPic2;
@property (retain, nonatomic) IBOutlet UIImageView *imgPic3;
@property (retain, nonatomic) IBOutlet UIImageView *imgPic4;
@property (retain, nonatomic) IBOutlet UIImageView *imgPic5;

假设所有 UIImagiage View 都装满了图像, 用户可以在运行时删除任何 UIImagiView, 我想知道我如何实现以下情景?

我希望有一个智能环圈,这样,如果用户删除 < 强 > imgPic3 < /强 >, < 强 > imgPic4 < /强 > 图像将移动到 < 强 > imgPic3 < /强 >,而 < 强 > imgPic5 < /强 > 将移动到 < 强 > imgPic4 < /强 > 和 < 强 > imgPic5 指定为无

imgPic3.img = imgPic4.img;
imgPic4.img = imgPic5.img;
imgPic5.img = nil;

如果被删除,我可以为每个UIIMageView 硬代码5个逻辑情景, 但我想以聪明的方式做, 这样它就会有效, 即使我有100个 UIIMage View 。

最佳回答

使用 NSmubableAray 来包含 5 UIImageView 指针。 当图像视图 x 被删除时, 请做 :

for (int i = imgViewNumber; i < [myImageViewArray count]-1; i++) {
    [[myImageViewArray objectAtIndex:i] setImage:[[myImageViewArray objectAtIndex:i+1] image]];
}
[[myImageViewArray lastObject] setImage:nil];

Edit:
To add your UIImageViews to the array:

  1. Don t have each one defined as a property nor an iVar - only have a retained property for the array.
  2. Use a for (int i = 0; i < numImageViews; i++) loop to add all of your image views, and at the same time as calling addSubview:, call [myImageViewArray addObject:imageView].
  3. Then if you want to set the image for a particular image view, call [[myImageViewArray objectAtIndex:imageViewNumber] setImage:image] (bear in mind that for image view 1, imageViewNumber should be 0)

希望现在情况明了

问题回答

暂无回答




相关问题
List Contents of Directory in a UITableView

I am trying to list the contents of Ringtones directory in a TableView, however, I am only getting the last file in the directory in ALL cells, instead of file per cell. This is my code: - (...

iPhone NSUserDefaults persistance difficulty

In my app i have a bunch of data i store in the NSUserdefaults. This information consists of an NSObject (Object1) with NSStrings and NSNumbers and also 2 instances of yet another object (Object2). ...

Writing a masked image to disk as a PNG file

Basically I m downloading images off of a webserver and then caching them to the disk, but before I do so I want to mask them. I m using the masking code everyone seems to point at which can be found ...

Resize UIImage with aspect ratio?

I m using this code to resize an image on the iPhone: CGRect screenRect = CGRectMake(0, 0, 320.0, 480.0); UIGraphicsBeginImageContext(screenRect.size); [value drawInRect:screenRect blendMode:...

Allowing interaction with a UIView under another UIView

Is there a simple way of allowing interaction with a button in a UIView that lies under another UIView - where there are no actual objects from the top UIView on top of the button? For instance, ...

热门标签