2016-02-02 8 views
9

, wie wir UIAlertView in iOS verwenden 9 und wie Schaltfläche hinzufügen in UIAlertController, wie man hinzufügen Schaltfläche in UIAlertController In IOS 9

UIAlertController * alert=[UIAlertController 

alertControllerWithTitle:@"Title" message:@"Message"preferredStyle:UIAlertControllerStyleAlert]; 

UIAlertAction* yesButton = [UIAlertAction 
         actionWithTitle:@"Yes, please" 
         style:UIAlertActionStyleDefault 
         handler:^(UIAlertAction * action) 
         { 
          **//What we write here????????** 


         }]; 
UIAlertAction* noButton = [UIAlertAction 
          actionWithTitle:@"No, thanks" 
          style:UIAlertActionStyleDefault 
          handler:^(UIAlertAction * action) 
          { 
           **//What we write here????????** 

          }]; 

[alert addAction:yesButton]; 
[alert addAction:noButton]; 

[self presentViewController:alert animated:YES completion:nil]; 
+1

bereits hinzugefügt u die beiden Tasten, dass in ** // Was wir schreiben hier ???????? **, musst du mit deiner Aktion fertig werden, was immer du brauchst, das ist alles, du musst mehr Knöpfe hinzufügen .. –

+0

dann, wie mit dieser Aktion umzugehen ??? Ich kann nicht verstehen :(@ Anbu.Karthik –

Antwort

29
UIAlertController * alert=[UIAlertController alertControllerWithTitle:@"Title" 
                   message:@"Message" 
                 preferredStyle:UIAlertControllerStyleAlert]; 

UIAlertAction* yesButton = [UIAlertAction actionWithTitle:@"Yes, please" 
                style:UIAlertActionStyleDefault 
                handler:^(UIAlertAction * action) 
{ 
    /** What we write here???????? **/ 
    NSLog(@"you pressed Yes, please button"); 

    // call method whatever u need 
}]; 

UIAlertAction* noButton = [UIAlertAction actionWithTitle:@"No, thanks" 
                style:UIAlertActionStyleDefault 
                handler:^(UIAlertAction * action) 
{ 
    /** What we write here???????? **/ 
    NSLog(@"you pressed No, thanks button"); 
    // call method whatever u need 
}]; 

[alert addAction:yesButton]; 
[alert addAction:noButton]; 

[self presentViewController:alert animated:YES completion:nil]; 

swift

let alert = UIAlertController(title: "Title", message: "Message", preferredStyle: .alert) 
    let yesButton = UIAlertAction(title: "Yes, please", style: .default, handler: {(_ action: UIAlertAction) -> Void in 
     /** What we write here???????? **/ 
     print("you pressed Yes, please button") 
     // call method whatever u need 
    }) 
    let noButton = UIAlertAction(title: "No, thanks", style: .default, handler: {(_ action: UIAlertAction) -> Void in 
     /** What we write here???????? **/ 
     print("you pressed No, thanks button") 
     // call method whatever u need 
    }) 
    alert.addAction(yesButton) 
    alert.addAction(noButton) 
    present(alert, animated: true) { _ in } 
+1

zunächst drücken Sie die Taste setzen Sie den Breakpoint und überprüfen, das NSlog wird aufgerufen, hier keine Notwendigkeit von Delegierten auf UIAlertcontroller, wenn Sie alertview verwenden, werden die Delegierten aufgerufen und wir Handle die weitere Prozedur, aber in UIAlertController keine Notwendigkeit der Delegate-Methode, die UIAlertaction Handle die Delegate-Aktion jeder Schaltfläche. –

+1

bro sind Sie verstehen, oder Sie brauchen mehr Erklärung bro .. –

+0

danke bro jetzt habe ich verstehen 100% :) –

4

Sie müssen tatsächlich schreibe den Code nach dem OK und den Abbrechen-Button in den jeweiligen Fertigstellungsblöcken.

UIAlertController * alert=[UIAlertController 

alertControllerWithTitle:@"Title" message:@"Message"preferredStyle:UIAlertControllerStyleAlert]; 

    UIAlertAction* yesButton = [UIAlertAction 
         actionWithTitle:@"Yes, please" 
         style:UIAlertActionStyleDefault 
         handler:^(UIAlertAction * action) 
         { 
          [self okButtonPressed]; 

         }]; 
    UIAlertAction* noButton = [UIAlertAction 
          actionWithTitle:@"No, thanks" 
          style:UIAlertActionStyleDefault 
          handler:^(UIAlertAction * action) 
          { 
           [self cancelButtonPressed]; 

          }]; 

    [alert addAction:yesButton]; 
    [alert addAction:noButton]; 

    [self presentViewController:alert animated:YES completion:nil]; 


- (void)cancelButtonPressed{ 
    // write your implementation for cancel button here. 
} 

- (void)okButtonPressed{ 
    //write your implementation for ok button here 
} 
+0

@shehzed ali du bist auch richtig mein bro :) –

+0

Dank bro @anupgupta –

0

Sie können nur diese Blöcke nil lassen, wenn Sie keine weiteren Aktionen nach dem Button Klopfen nicht benötigt werden:

UIAlertAction* yesButton = [UIAlertAction 
         actionWithTitle:@"Yes, please" 
         style:UIAlertActionStyleDefault 
         handler:nil];