Я пишу простую программу, которая отображает число из массива 1 на метке, а затем переводит число в массив 2. Однако массив продолжает возвращать пустой.NSMutableArray возвращает пусто
Вот мой код.
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self firstArrayInit];
[self secondArrayInit];
[self tranferA1toA2];
}
-(NSMutableArray *) firstArrayInit{
self.originalArray = [NSMutableArray array];
for (int i=0; i<16; i++) {
[self.originalArray addObject:[NSNumber numberWithInteger:i]];
}
return self.originalArray;
}
-(NSMutableArray *)secondArrayInit{
self.secondArray = [NSMutableArray array];
return self.secondArray;
}
-(void) tranferA1toA2{
self.mytimer = [NSTimer scheduledTimerWithTimeInterval:2
target:self
selector:@selector(displayNumber)
userInfo:nil
repeats:YES];
}
-(NSMutableArray *)addToSecondArray:(int)myNumber{
[self.secondArray addObject:[self.originalArray objectAtIndex:myNumber]];
return self.secondArray;
}
-(void) displayNumber{
static int num=0;
if (num < level){
myLabel.text = [NSString stringWithFormat:@"%@", [self.originalArray objectAtIndex:num]];
[self addToSecondArray:num];
}
else{
[self.mytimer invalidate];
[myLabel setText:@""];
}
num++;
}
Я попытался распечатки значения в массиве 2 из displayNumber
, и она работает. Но вне функции массив пуст.
Что такое переменная уровня? где оно объявлено? какое значение оно назначено? –
где вы называете метод addToSecondArray? –
@NeilGaliaskarov in displayNumber метод –