2012-08-07 51 views
-1

我在我的項目中有一個Plist文件,它有許多不同的數組;每個數組都是一個不同的類別,然後包含針對單個問題的其他數組。我遇到的問題是訪問這些數組中的節點及其值。我使用在Plist文件數組內訪問字符串值?

代碼:

-(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; 

} 

我的類別陣列從這一行我的plist文件填寫;

categories = [NSArray arrayWithContentsOfFile:@"questions.plist"]; 

回答

0

解決方案:

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 
} 
+0

謝謝我會試試這個!但只有一個問題,我想我現在可以將'q'和'a'作爲標準字符串?如果是的話,我應該如何逐步解決每個問題,例如,如何從第一對「問題」和「答案」移動到類別數組中的下一對/問題。 – Kolors 2012-08-08 00:47:01

+0

@KarlDaniel這就是這個代碼已經做了什麼。這是一個for-in循環。 – 2012-08-08 04:33:25

+0

我只是想知道如果我正在使用一個按鈕,我將如何進入下一個數組? – Kolors 2012-08-08 13:16:05

1

您可以創建在你的NSString(問題&答案)的兩個實例,其組成問題& answer.Create類別的數組的值一類由該類的對象組成。