2012-09-02 56 views
1

我非常新的xcode和我有一個問題,我的第一個應用程序。 我有一個UIPickerView與2個組件填充NSMutableArray在我的應用程序。如果第一個組件被更改,第二個組件Array被清除並填充新的值。 現在我必須檢測第一個組件中選定的行和第二個組件中選定的行,才能在UIWebView中加載本地HTML頁面。 我試着用if循環,但我不明白如何檢測2個組件上的所有選定的行。 我的源代碼的繼承人豆蔻片段:如何使用didSelectRow中的2個組件檢測UIPickerView的所有值?

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 
{ 
NSLog(@"the %d row was selected in the %d component", row, component); 
if ((component == 0) && (row ==0)){ 
    [rightPickerArray removeAllObjects]; 
    [rightPickerArray addObject:@"5.0"]; 
    [rightPickerArray addObject:@"5.1"]; 
    [pickerView reloadAllComponents]; 
} 
if ((component == 0) && (row ==1)){ 
    [rightPickerArray removeAllObjects]; 
    [rightPickerArray addObject:@"1"]; 
    [rightPickerArray addObject:@"2"]; 
    [pickerView reloadAllComponents]; 
} 

if ((component ==1) && (row ==0)){ 
    NSString *fileString = [[NSBundle mainBundle] pathForResource:@"index" ofType: @"html"]; 

    NSString *newHTMLString = [[NSString alloc] initWithContentsOfFile: fileString encoding: NSASCIIStringEncoding error: NULL]; 

    NSURL *newURL = [[NSURL alloc] initFileURLWithPath: fileString]; 

    [myWebView loadHTMLString: newHTMLString baseURL: newURL]; 
} 

回答

2

UIPickerView具有「selectedRowInComponent:」這是應該幫助使用此方法。檢查this了。

+1

我非常喜歡,但問題是,我不能將它翻譯成if循環。我希望你能幫助我,給我更多的信息。 – HelloXcode

+1

int newRow = [pickerView selectedRowInComponent:1]; if(newRow == 2){ //做某事 } 不確定你的意思是不能轉化爲「if loop」 – Bek

+1

大thx,那是我尋找的那個! – HelloXcode

相關問題