我有一个名为 Empty.png 的图像,它是一个很小的方形图块,我如何实例化图像以显示在屏幕上的几个不同点?
提前感谢您的任何帮助:)
您可以将UIImageView
's 放置在您希望图像出现的任何位置。然后将每个图像视图的图像属性设置为该图像。(UIImage
对象)。
如果您使用的是界面构建器,那么您只需在imageview
界面构建器的属性检查器中输入文件名。
或者你可以这样做:
UIImage *img = [UIImage imageName:@"Empty.png"];
imageView.image = img; //Assuming this is your utlet to the image view.
这将使您在某个视图中获得一张图像
CGPoint position = CGPointMake(x,y);
UIImageView *img = [[UIImageView alloc] init];
img.image = [UIImage imageNamed:@"Empty.png"];
img.frame = CGRectMake(position.x, position.y, img.image.size.width, img.image.size.height);
[someUIView addSubview:img];
如果你为所有图像的位置 (x,y) 创建一个数组,那么你可以在 for 循环中运行它,它会将图像放入视图中你想要的位置
注意:CGPoints 不能存储在 NSArray 中,因为它不是 NSObject 类型,要么使用 C/C++ 数组,要么使用其他可以放入 NSArray 的东西
这取决于你想如何使用它。
如果你只是用核心图形绘制它,比如说indrawInRect:
左右,那么你只需绘制它几次。
如果您想在一个或多个图像视图中显示它,则实例化您的 UIImageViews 并将相同的对象分配给所有它们。或者让 Interface Builder 为您进行实例化。但是您不能将单个 UIView 对象多次添加到一个或多个子视图层次结构中。如果您将 UIView 作为子视图添加到视图中,那么它将从之前的位置消失。10 个 UIImageView 可能使用相同的 UIView,但您需要 10 个 UIImageView 才能显示所有这些。
这同样适用于 UIButtons 和每个具有图像或背景图像的 UI 事物。