2012-04-05 5 views

Antwort

1

die actionsheet Entlassen und dann [self presentmodalviewcontroller:myview animated:yes]

3

Ja, ist es möglich. Um dies zu tun, muss die viewController, die die UIActionSheet darstellt, UIActionSheetDelegate übernehmen. Wenn Sie das Aktionsblatt mit Ja oder Abbrechen ablehnen, wird die Methode - actionSheet:didDismissWithButtonIndex: aufgerufen, und von dort aus können Sie zu einer anderen Ansicht navigieren oder sie einfach ignorieren.

Referenzen: http://developer.apple.com/library/ios/#documentation/uikit/reference/UIActionSheet_Class/Reference/Reference.html#//apple_ref/occ/cl/UIActionSheet

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIModalViewDelegate_Protocol/UIActionSheetDelegate/UIActionSheetDelegate.html


Edit:

@interface MyViewController : UIViewController <UIActionSheetDelegate> 
-(IBAction)showActionSheet:(id)sender; 
@end 


@implementation MyViewController 

-(IBAction)showActionSheet:(id)sender { 
    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Do you want to procced?" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:@"YES" otherButtonTitles:nil]; 

    [actionSheet showInView:self.view]; 
} 

-(void) actionSheet: (UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex { 
    switch (buttonIndex) { 
     case 0: { 
      // for illustration 
      // let's assume (1) you have a navigation controller 
      // (2) you are using storyboard 
      // (3) in the storyboard, you have a viewController with identifier MyChildViewControllerIdentifier 
      MyChildViewController *mcvc = [self.storyboard instantiateViewControllerWithIdentifier:@"MyChildViewControllerIdentifier"]; 
      [self.navigationController pushViewController:mcvc animated:YES]; 
      break; 
     } 
     default: 
      break; 
    } 
} 

P. S. Ich habe es nicht ausgeführt, wenn es einen Fehler gibt, lassen Sie es mich wissen, um es zu beheben.

+0

Ich habe nicht wirklich verstanden, was du gesagt hast ... meinst du so etwas wie :? - (IBAction) showActionSheet: (ID) Absender { UIActionSheet * actionSheet = [[UIActionSheet Alloc] initWithTitle: @ "Möchten Sie Proced?" delegate: self cancelButtonTitle: @ "Abbrechen" destructiveButtonTitle: @ "YES" otherButtonTitles: nil, nil]; [actionSheet showInView: self.view]; } - (void) actionSheet: (UIActionSheet *) actionSheet didDismissWithButtonIndex: (NSInteger) buttonIndex { Schalter (buttonIndex) { Fall 0: break; default: brechen; } } – OphirRam8

+0

@ OphirRam8 Ja. Ich habe ein Beispiel hinzugefügt. Welcher Teil ist noch unklar? – Canopus

+0

Ich erhalte einen Fehler: "unbekannter Typ Name 'MyChildViewController', meinst du 'UiTableViewController'?" – OphirRam8

Verwandte Themen