ios - color - set navigation bar swift
¿Hay alguna manera de ''diseñar'' una UIView personalizada en el guión gráfico y usarla en múltiples ViewControllers sin agregar ningún controlador específico? (2)
No creo que puedas crear una UIView personalizada en el guión gráfico. Entonces, en este caso, puede crear un archivo xib para esa vista personalizada. Luego, cuando quieras usar esa vista, solo usa
UIView *customView = [[[NSBundle mainBundle] loadNibNamed:@"MyCustomView" owner:self options:nil] objectAtIndex:0];
para obtener esa vista.
Necesito una UIView
personalizada que se use en múltiples ViewControllers
diferentes. Por lo general, cuando creo una UIView
personalizada, arrastro una instancia de UIView
en mi ViewController
en el guión gráfico, creo una subclase de UIView
y UIView
esta subclase en el Identity Inspector
para la vista. A partir de ahí, conectaría los objetos UI como salidas al archivo de encabezado de la subclase.
La vista que quiero hacer ahora, no se supone que sea parte de ningún controlador específico, sino que debe agregarse a cualquier controlador que la solicite. Un pícaro UIView
. Sé que puedo crear todo el UIView
programación, y solo crear una instancia del mismo, pero me gustaría tenerlo (y diseñarlo) en mi guión gráfico.
En Storyboard, los únicos objetos que puedo arrastrar "fuera de ViewController" son otros ViewControllers.
Nunca he usado otra cosa que Storyboard para el desarrollo de iOS, pero he venido a tutoriales que han estado usando el otro modo, de los viejos tiempos , que se parece a lo que necesito. ¿Es posible obtener algo similar en mi guión gráfico? ¿O requeriría esto su propia configuración / diseño? ¿Si es así, cómo?
También estaba pensando en resolver esto con la adición de un "fantasma" UIViewController
contiene mi vista personalizada; diseñarlo allí, pero crear una instancia de los otros controladores, pero esto suena tan raro ...
Me gustaría hacer esto con una UITableViewCell
también, pero supongo que tendría la misma solución.
Para su UIView, debe crear un UIViewController personalizado en su guión gráfico y crear una instancia del controlador de vista para acceder a la vista:
MyViewController *myViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MyViewController"];
// Access the view using "myViewController.view"
Esta es una práctica muy común en iOS desde que se presentaron los guiones gráficos. Si está utilizando varios guiones gráficos, debe crear una nueva instancia de UIStoryBoard con:
UIStoryboard * storyboard = [UIStoryboard storyboardWithName:@"StoryboardName" bundle:nil];
Y luego crea una instancia del controlador de vista con esta instancia del guión gráfico.
Si desea utilizar únicamente UIView, debe crear un archivo .xib, es decir, el formato de días anteriores . Para crear una UITableViewCell personalizada, usaría absolutamente un archivo .xib. Su última opción sería crear un UIView mediante programación, que podría ser llamado desde cualquier lugar de su aplicación. Dependiendo de la complejidad de esta vista, esta puede ser una opción válida.