问题
I've got a Plist file in my project that has a number of different arrays; each array is a different category which then contains additional arrays for individual questions. The problem I'm having is accessing the nodes and their values within these arrays.
Code I'm using:
-(IBAction)nextleft {
if (questionCounter > 1) {
questionCounter -= 1;
}
[self nextQuestion];
}
-(IBAction)nextright {
if (questionCounter < 20) {
questionCounter += 1;
}
[self nextQuestion];
}
-(void)nextQuestion {
NSArray *pair;
pair = [categories objectAtIndex:questionCounter];
plistQuestion = [pair objectAtIndex:0];
plistAnswer = [pair objectAtIndex:1];
abbreviation.text = plistQuestion;
}
My categories array is filled from my Plist file with this line;
categories = [NSArray arrayWithContentsOfFile:@"questions.plist"];
回答1:
You can create a class in which you have two instances of NSString (question & answer) which consist the value of question & answer.Create an array of category which consist of object of that class.
回答2:
Solution:
NSArray *categories = [NSArray arrayWithContentsOfFile:@"questions.plist"];
for (NSArray *pair in categories)
{
NSString *q = [pair objectAtIndex:0];
NSString *a = [pair objectAtIndex:1];
// process q and a
}
来源:https://stackoverflow.com/questions/11851026/accessing-strings-values-within-plist-file-arrays