Call a view controller programatically using storyboard id iOS

后端 未结 3 828
离开以前
离开以前 2021-01-22 00:10

What I Want?

  • In MainViewController I open a view from a xib programmatically. This xib view contains a UIButton. The xib opens successf
相关标签:
3条回答
  • 2021-01-22 00:54

    whenever you want to load a VC as the way you mentioned, you need two things.

    Thing 1: Specific storyboard ID. you will find this by:

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Your_Storyboard_Id" bundle:nil];

    In my case this is Main

    Thing 2:

    You need your View Controller id. Just click on the View Controller you want to go from storyboard and give a suitableName there.

    Then invoke this like:

    UIViewController * yourVC = [storyboard   
    instantiateViewControllerWithIdentifier:@"YourVC_ID"] ;
    

    And if you want to present it modally you already did this. :)

    [self presentViewController:yourVC animated:YES completion:nil];
    
    0 讨论(0)
  • 2021-01-22 00:57

    Try this

    UIStoryboard *story = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
    FeedBackViewController * feedbackVC = [story   instantiateViewControllerWithIdentifier:@"FeedBackView"] ;
    [self presentViewController:feedbackVC animated:YES completion:nil];
    

    Where FeedBackView is your storyboard id of FeedBackViewController.

    0 讨论(0)
  • 2021-01-22 01:02

    Check these things

    Check the identifier of the viewcontroller, if it is the same that you mentioned in storyboard

    Make sure that your view object is not nil. Set a breakpoint on that line and on the debug area at the bottom see whether the object is not nil. If it is nil then problem lies in the storyboard connection

    If your current viewcontroller is not launched from storyboard then get storyboard object like this :

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
    UIViewController * feedbackVC = [storyboard   instantiateViewControllerWithIdentifier:@"FeedBackView"] ;
    [self presentViewController:feedbackVC animated:YES completion:nil];
    
    0 讨论(0)
提交回复
热议问题