2014-08-30 37 views
-1

我有一個選擇器視圖,其中有一些值已經在裏面了,例如裏面的一個東西是天氣,我有一個按鈕可以在選擇器視圖中工作,所以當你選擇天氣並推動按鈕彈出一個警告,並說歡迎到X.你選擇天氣比你按下OK來移除警報,我想知道在你按下OK後是否有可能將你帶到有天氣的視圖控制器。我從來沒有見過這樣做,這是一個全在一個應用程序,也有大約6或7個選擇器上的其他項目,所以如果有人可以幫助這將是偉大的:這是我的代碼。順便說一句,我是新來的網站抱歉,如果我沒有做代碼塊。移動到PickerView上的另一個視圖選擇行

- (void)viewDidLoad 
{ 
    NSArray *data = [[NSArray alloc] initWithObjects:@"Weather", @"Calendar", @"Facebook", @"Twitter", @"Instagram",@"Tasks" ,nil]; 
    self.array = data; 


    [super viewDidLoad]; 
    // Do any additional setup after loading the view from its nib. 
} 


#pragma marks Picker Data Source Methods 

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component { 

    return [_array count]; 
} 

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView { 

    return 1; 
} 

#pragma mark Picker Delegate Methods 

-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { 

    return [_array objectAtIndex:row]; 
} 

- (IBAction)ButtonPressed:(id)sender { 

    NSString *select = [_array objectAtIndex:[_picker selectedRowInComponent:0]]; 

    NSString *title = [ [NSString alloc] initWithFormat:@"You selected %@!" , select]; 

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:@"Welcome To One" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; 

    [alert show]; 


} 
+0

傢伙選擇器視圖正常工作!!!!它是我問的問題!如果可能的話,我想使用選取器視圖去另一個tableviewcontroller!閱讀這個問題! – Luka 2014-08-30 05:02:25

+0

請在您的問題中提及此問題 – Mohit 2014-08-30 05:03:56

+0

您希望在選擇pickerview中的任何行時轉到另一個tableviewcontroller。我對嗎?? – Mohit 2014-08-30 05:05:11

回答

1
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 
{ 
// Show alert here 

    [[[UIAlertView alloc] 
       initWithTitle:@"" message:@"Alert Message" 
       delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil] 

      show]; 

} 

-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
if (buttonIndex == 0) 
{ 
    UIStoryboard * storyboard = self.storyboard; 

     ViewController * detail = [storyboard instantiateViewControllerWithIdentifier: @"YourViewControlller"]; 

     [self.navigationController pushViewController: detail animated: YES]; 

} 
} 
0
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent: (NSInteger)component 
{ 
    NSString *select = [_array objectAtIndex:component]; 
    NSString *title = [ [NSString alloc] initWithFormat:@"You selected %@!" , select]; 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:@"Welcome To One" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; 
    alert.delegate = self; 
    [alert show]; 
} 
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 0) 
    { 
    [self.navigationController performSegueWithIdentifier:@"Identifier" sender:nil]; 
    } 
}  
2

你要做的像波紋管需要給標籤UIAlertView中否則會推圖上的每個UIAlertView中單擊

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent: (NSInteger)component 
{ 
    NSString *select = [_array objectAtIndex:component]; 
    NSString *title  = [ [NSString alloc] initWithFormat:@"You selected %@!" , select]; 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:@"Welcome To One" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; 
    alert.tag = 1001; 
    alert.delegate = self; 
    [alert show]; 
} 
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (alertView.tag == 1001) 
    { 
     [self.navigationController performSegueWithIdentifier:@"Identifier" sender:nil]; 
    } 
} 
相關問題