0
У меня есть @property (nonatomic,retain) NSMutableArray *transfer_array;
в файл .h и в моей .m я имеюДоступ к массивам в другом экземпляре класс Objective C
@synthesize transfer_array = _transfer_array;
- (id)init
{
self = [super init];
if(self) {
self.transfer_array = [[NSMutableArray alloc] init];
}
return self;
}
и добавить объекты в массив в этой функции
- (id)display:(double)imageXX andY:(double)imageYY withName:(NSString *)namee{
//if((self == [super init])){
NSLog(@"````````````````````````````````````````````````````````");
NSLog(@"imageX: %f",imageXX);
NSLog(@"imageY: %f", imageYY);
NSLog(@"name: %@", namee);
labelPoi = [[Poi alloc] init];
labelPoi.imageLocationX = imageXX;
labelPoi.imageLocationY = imageYY;
labelPoi.name = namee;
[self.transfer_array addObject:labelPoi];
объекты добавить успешно бушель всякий раз, когда я пытаюсь получить доступ к элементам массива в другом случае, такие как:
- (void)viewDidLoad{
[super viewDidLoad];
NSLog(@"transfer_array count: %lu",(unsigned long)self.transfer_array.count);
Затем массив пуст.
Любая помощь будет оценена!
Вы имеете в виду еще один экземпляр этого класса? Массив используется только в экземпляре. Если у вас есть два экземпляра этого класса, у вас есть два отдельных экземпляра этого массива. – dasdom
Не первый раз вызываете ваш viewDidLoad, а затем дисплей '- (id): (double) imageXX andY: (double) imageYY withName: (NSString *) namee {' function? Не могли бы вы добавить 'NSLog (@" transfer_array count:% lu ", (unsigned long) self.transfer_array.count);' в вашей функции отображения после добавления объекта в массив и показать нам результат? – Niklas
Я вызываю отображение в другом контроллере представления до того, как этот вид загрузится. Возможно, у меня нет правильной терминологии, по сути, когда я пытаюсь использовать массив в другой функции, массив пуст – user2125844