2014-09-23 97 views
0

可以說我有3個視圖控制器,是否有可能使用選擇器視圖來選擇視圖控制器。如果有的話,有人可以指引我正確的方向。選擇器視圖與視圖控制器

 
    - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView 
    { 
     return 1; 
    }

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component { return names.count; } - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { return [names objectAtIndex:row]; } - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component { switch (row) { case 0: break; default: break; } }

我想使用選擇器視圖來選擇被稱爲TfaViewController視圖控制器,我是在正確的軌道在這裏,可能有人幫助我的代碼視圖控制器之間進行切換。 我很抱歉,我的代碼沒有正確設置。

+0

你有什麼試過?你知道如何從選取器視圖中獲取用戶的選擇嗎?你知道如何去一個新的控制器?將問題分解成若干部分,看看你能否取得進展,如果遇到困難,請回答一個更具體的問題。 – rdelmar 2014-09-23 03:16:00

+0

感謝您的回覆@rdelmar,我用picker view做了幾個程序,但從來沒有使用picker view來選擇視圖控制器,我不確定這是否可能,所以我不知道如何使用picker view去一個新的視圖控制器。我在這個網站和谷歌搜索,但我還沒有找到任何讓我去。 – Sleeperinn 2014-09-23 11:30:14

+0

您可以使用switch語句(切換選取器的選定行),並在case語句中推送,呈現或調用segue。 – rdelmar 2014-09-23 14:57:47

回答

1

你只需要實例你想去並將其顯示控制器,

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 
{ 
    TfaViewcontroller *tfaVC; 
    switch (row) { 
     case 0: 
      tfaVC = [self.storyboard instantiateViewControllerWithIdentifier:@"TfaViewController"]; 
      [self presentViewController:tfaVC animated:YES completion:nil]; 
      break; 
     case 1: 
      // do another one here 

     default: 
      break; 
    } 
} 

你需要確保你給控制器相同標識符的故事板,正如您在instantiateViewControllerWithIdentifier經過此地:。

+0

我得到這個錯誤,我在這裏和故事板ID有相同的名稱。還有什麼我需要做的。 TfaViewcontroller * tfaVC = [self.storyboard instantiateViewControllerWithIdentifier:@「TfaViewController」]; [self presentViewController:tfaVC animated:YES completion:nil]; – Sleeperinn 2014-09-25 02:40:34

+0

@Sleeperinn,你得到了什麼錯誤? – rdelmar 2014-09-25 02:41:12

+0

未知類型名稱'TfaViewController';你的意思是'UIViewController'和使用未聲明的標識符'tfaVC' – Sleeperinn 2014-09-25 02:45:54

相關問題