Увеличение NSArray по нажатию кнопки - PullRequest
0 голосов
/ 20 февраля 2012

Я читаю текстовый файл построчно и сохраняю его в NSArray.Чего я хочу добиться, так это увеличить индекс моего NSArray, когда пользователь нажимает кнопку.

Код:

 text.editable = NO;
 NSString *fileString = [NSString stringWithContentsOfFile:[[NSBundle mainBundle]pathForResource:@"firstyea" ofType:@"txt"] encoding:NSUTF8StringEncoding error:nil]; // reads file into memory as an NSString
 NSArray *lines = [fileString componentsSeparatedByString:@"\n"]; // each line, adjust character for line endings
 NSString *wat = [lines objectAtIndex:1]; 
 text.text = wat;
 [self.view addSubview:text];

Так что я должен увеличивать objectAtIndex на 1 всякий раз, когда пользовательнажимает кнопку.Я могу сделать это в C ++, имея переменную типа int и говоря что-то вроде objectAtIndex:counter++, но я не знаю, как сделать то же самое в IOS.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2014

Объявите целое число в глобальном масштабе.@property int i;

in

viewDidLoad

, объявить i=0;

-(IBAction)BtnClick:(id)sender

{

if ( i < lines.count )

{

   NSString *wat = [lines objectAtIndex:i];

   i=i+1;

}
}

Надеюсь, это поможет.

0 голосов
/ 20 февраля 2012

Вы не можете сделать это с NSArray, вам нужно использовать NSMutableArray Вы должны взять переменную типа static int.

Например:

static int counter=0; //define it globally

NSMutableArray *tempArray=[[NSMutableArray alloc] init];

[tempArray insertObject:@"Your Data From File" atIndex:counter++];

Примечание: не забудьте освободить массив после того, как вы закончили его использовать!

...