ios objective-c segue

ios - instantiateViewControllerWithIdentifier-El conjunto de ID del guión gráfico pero aún no funciona



objective-c segue (5)

Dentro de mi viewDidLoad he colocado el botón que llama goldStarOpen:

UIButton *btnTwo = [UIButton buttonWithType:UIButtonTypeCustom]; btnTwo.frame = CGRectMake(250, 20, 40, 40); [btnTwo addTarget:self action:@selector(goldStarOpen) forControlEvents:UIControlEventTouchUpInside]; [btnTwo setImage:[UIImage imageNamed:@"GoldStar.png"] forState:UIControlStateNormal]; [self.view addSubview:btnTwo];

Inside goldStarOpen Tengo un código que es casi idéntico al tuyo.

- (void)goldStarOpen { UIStoryboard *storyboard = [UIStoryboard storyboardWithName: @"MainStoryboard" bundle:[NSBundle mainBundle]]; UIViewController *myController = [storyboard instantiateViewControllerWithIdentifier:@"GoldStar"]; [self presentViewController:myController animated:YES completion:nil]; }

goldStarOpen activa un ViewController en el guión gráfico.

Es posible que deba configurar el ID de guión gráfico del controlador de vista que está intentando cargar. Esto se encuentra en el inspector, justo debajo de donde asigna una clase personalizada a su controlador de vista.

Tengo que crear un segmento de manera programática; sin embargo, cuando hago clic en el botón de vista, el controlador no cambia al siguiente, la identificación del guión gráfico está configurada y aún no funciona. ¿Me faltan otros cheques para que esto funcione?

Por favor vea el código a continuación:

EntryViewController *entryController = [self.storyboard instantiateViewControllerWithIdentifier:@"go"]; [self.navigationController pushViewController:entryController animated:YES];

me está volviendo loco Gracias


No se puede configurar el storyboard controladores de vista. Es de solo lectura y se establece cuando se crea el controlador de vista. En su lugar, deberá obtener el guión gráfico de otro lugar o cargarlo.

Puede obtener el guión gráfico del controlador de vista raíz del AppDelegate. O use + (UIStoryboard *)storyboardWithName:(NSString *)name bundle:(NSBundle *)storyboardBundleOrNil .


Prueba esto,

UIStoryboard * storyboardobj=[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; EntryViewController *entryController = [storyboardobj instantiateViewControllerWithIdentifier:@"go"]; [self.navigationController pushViewController:entryController animated:YES];


Utilizar

+ (UIStoryboard *)storyboardWithName:(NSString *)name bundle:(NSBundle *)storyboardBundleOrNil.

Así que prueba esto

self.storyboard=[UIStoryboard storyboardWithName:@"Your_Story_Board_Name" bundle:[NSBundle mainBundle]]; EntryViewController *entryController = [self.storyboard instantiateViewControllerWithIdentifier:@"go"]; [self.navigationController pushViewController:entryController animated:YES];


pruebe este guión gráfico Elija UIViewController-> Xcode-> Editor-> Emabed In-> Navigation Controller

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"YourStoryboard" bundle: nil]; YourViewController *vc = [mainStoryboard instantiateViewControllerWithIdentifier: @"YourViewController"]; [self.navigationController pushViewController:vc animated:YES];