-3

我使用@property 在我的AppDelegate 中创建了一个数组(NSMutablearray),我无法在其他类中访问这个数组(尽管我使用了#import“AppDelegate”)。

这是我的数组属性的减速:

@property(nonatomic,strong) NSMutableArray *photoArray;

这是我的数组初始化(Appdelegate.m):

    photoArray = [[NSMutableArray alloc] init];
    PhotoItem *photo1 = [[PhotoItem alloc] initWithPhoto:[UIImage imageNamed:@"1.jpg"] name:@"roy rest"  photographer:@"roy"];
    PhotoItem *photo2 = [[PhotoItem alloc] initWithPhoto:[UIImage imageNamed:@"2.jpg"] name:@"roy's hand" photographer:@"roy"];
    PhotoItem *photo3 = [[PhotoItem alloc] initWithPhoto:[UIImage imageNamed:@"3.jpg"] name:@"sapir first" photographer:@"sapir"];
    PhotoItem *photo4 = [[PhotoItem alloc] initWithPhoto:[UIImage imageNamed:@"4.jpg"] name:@"sapir second" photographer:@"sapir"];
    [photoArray addObject:photo1];
    [photoArray addObject:photo2];
    [photoArray addObject:photo3];
    [photoArray addObject:photo4];

现在,我想访问其他类中的数组对象,我该怎么做?

谢谢!!

4

2 回答 2

0

创建一个单例类并将其命名为 commonData 以保留要在屏幕之间使用的数组和公共数据。

于 2012-06-01T16:59:27.873 回答
0

要访问您的 AppDelegate 属性,您必须获取委托的实例。

MyAppDelegate *delegate = (MyAppDelegate*)[[UIApplication SharedApplication] delegate];
delegate.photoArray //Do something

这允许您使用 delegate.photoArray 访问它。

还有其他几种方法,但这对于简单的访问来说既快速又容易。

于 2012-06-01T16:39:16.360 回答