我用Buttonclicked方法创建了一个ImageViews数组:
UIImageView *arrayOfImageViews[10]
我使用循环将它们成功加载到屏幕上。 (这个初学者的大成就!)
但我想在其他方法中引用它们(例如touchMove
)。
我在哪里声明arrayOfImageViews
同时是一个数组和一个UIImageView
类,以便我可以在其他方法中使用它们?根据我的发现,我要在.h
中的.m
及以上的实施中声明它们。但我无法弄清楚将对象定义为除了原始函数之外的任何东西的UIImageViews数组的代码和位置。
答案 0 :(得分:0)
尝试使用属性。因此,在.h
文件中,您希望定义如下属性:
@interface MyClass: UIView {
NSArray *arrayOfImageViews;
}
@property (nonatomic,retain) NSArray *arrayOfImageViews;
现在在实现(.m
文件)中你需要像这样绑定这个属性
@implementation MyClass
@synthesize arrayOfImageViews;
//now you need to initialize the array of images like this (look for the method viewDidLoad or //just add it)
- (void)viewDidLoad
{
NSMutableArray *tmpImages = [[NSMutableArray alloc]init];
//initialize images here
[self setArrayOfImageViews:tmpImages];
[tmpImages release];
[super viewDidLoad];
}
应该这样做...抱歉,我没有时间发布实际编译的代码,但它应该有所帮助。基本上现在你在课堂上有一个属性,你可以像self.arrayOfImages
一样访问它,甚至可以只访问arrayOfImages
(来自MyClass
内)。另外,我使用NSArray
,我建议你也这样做。但是,如果您愿意,也可以使用UIImageView* arrayOfImages
。