2016-08-04 69 views

Antwort

1

Ich habe 3 Controller.ViewController und ThirdViewController in Storyboard.SecondViewController ist XIB Teil.

Zuerst rufe ich XIB von Storyboard

ViewController.m

#import "ViewController.h" 
#import "SecondViewController.h" 
@interface ViewController() 

@end 

@implementation ViewController 


- (IBAction)actionGoXIB:(id)sender 
{ 
    SecondViewController *secondVC = [[SecondViewController alloc]initWithNibName:@"SecondViewController" bundle:nil]; 
    [self.navigationController pushViewController:secondVC animated:YES]; 
} 

Jetzt nenne ich Stoyboard von XIB

Wenn Sie dies acheive wollen, zuerst zu Storyboard Klicken Sie gehen ThirdViewController

Click-> Identity Inspector

Dann klicken -> Identity

nun die Storyboard-ID Set

im Identity Abschnitt ThirdViewController

Siehe die Screenshots unten

enter image description here enter image description here

SeconViewController. m

#import "SecondViewController.h" 
#import "ThirdViewController.h" 

@interface SecondViewController() 

@end 

@implementation SecondViewController 

- (IBAction)actionGoStoryboard:(id)sender 
{ 
    UIStoryboard *mainStoryBoard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; 
    ThirdViewController *thirdVC = [mainStoryBoard instantiateViewControllerWithIdentifier:@"ThirdViewController"]; 
    [self.navigationController pushViewController:thirdVC animated:YES]; 
    // [self presentViewController:thirdVC animated:YES completion:nil]; 
} 
+0

was ist, wenn Sie presentViewController verwenden müssen? nicht navigationController? – iphonemaclover

+0

können Sie den aktuellen Ansicht Controller nicht ein Problem verwenden.Aber nicht mit Push und präsentieren, um Controller zu sehen.Wenn Sie beide verwenden, setzen und lassen Sie den Weg für separate Ansicht Controller.Wenn Sie mit Push verwenden möchten, verwenden Sie, dass für Ein View-Controller und auch wenn Sie den View-Controller präsentieren möchten, verwenden Sie einen anderen View-Controller vom selben View-Controller. – user3182143