visual una patrones navegacion movil las interaccion diseño apps app ios objective-c user-interface ios7 uikit

ios - una - Personalizar la barra de navegación de la interfaz de usuario y el botón



patrones de diseño movil (5)

Crea una imagen de 1x1 píxeles con el color que quieras. A continuación, agregue el siguiente código a su clase AppDelegate .

UIImage *btnBgColor = [[UIImage imageNamed:@"backColor"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)]; [[UIBarButtonItem appearance] setBackgroundImage: btnBgColor forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

O

Escriba el código a continuación en su clase base viewController, luego convierta esta clase en la superclase de todos sus otros controladores de vista.

UIButton* yourButton = [UIButton buttonWithType:UIButtonTypeCustom]; yourButton.layer.backgroundColor = [UIColor redColor].CGColor; UIBarButtonItem* buttonItem = [[UIBarButtonItem alloc] initWithCustomView: yourButton]; self.navigationBar.leftBArButtonItems = @[buttonItem];

Hola, soy nuevo en el desarrollo de ios y quiero saber cómo personalizar los botones de la barra de navegación

Esto es lo que utilicé para cambiar el color de la barra de navegación

[[UINavigationBar appearance] setBarTintColor:[UIColor]]

Quiero cambiar el color del botón

Aquí hay un exmaple


Primero debe configurar la barra de navegación, suponiendo que su primera pantalla es SpalshViewController, necesita configurar la pantalla de bienvenida como un controlador de vista raíz para la barra de navegación y luego establecer la barra de navegación como controlador de vista raíz como:

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; SplashScreenVC *obj =[CustomUtility getViewController:@"SplashScreenVC"]; self.navigationController =[[UINavigationController alloc] initWithRootViewController:obj]; self.window.rootViewController =self.navigationController;

en didFinishLaunchingWithOptions

Ahora, para personalizar la configuración y apariencia de la barra de navegación, debe configurar:

self.navigationController.navigationBar.translucent = NO; [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"top_bg2.png"] forBarMetrics:UIBarMetricsDefault]; [[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor],NSFontAttributeName:[UIFont fontWithName:@"Lato-Regular" size:18]}];

Ahora, al configurar los botones de la barra personalizada para la barra de navegación, debe crear elementos de barra de botones como:

UIBarButtonItem *leftbtn; UIBarButtonItem *rightbtn; [self.navigationController.navigationItem setLeftBarButtonItem:leftbtn]; [self.navigationController.navigationItem setRightBarButtonItem:rightbtn];

personalizar barbuttonItems acuerdo a su necesidad

Si desea establecer más de un botón en la barra de navegación, puede agregar como:

UIBarButtonItem *leftbtn1; UIBarButtonItem *leftbtn2; UIBarButtonItem *rightbtn1; UIBarButtonItem *rightbtn2; [self.navigationController.navigationItem setLeftBarButtonItems:@[leftbtn1,leftbtn2]]; [self.navigationController.navigationItem setRightBarButtonItems:@[rightbtn1,rightbtn2]];

Espero que te sea útil


Puede agregar su botón personalizado en la barra de navegación como:

UIButton *btnObj = [UIButton buttonWithType:UIButtonTypeCustom]; [btnObj setFrame:CGRectMake(0, 0, 60, 44)]; [btnObj setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter]; [btnObj setImage:[UIImage imageNamed:@"<button background image>"] forState:UIControlStateNormal]; [btnObj addTarget:self action:@selector(btnObjClick:) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *itemBtnObj = [[UIBarButtonItem alloc] initWithCustomView:btnObj]; self.navigationItem.rightBarButtonItems = [[NSArray alloc]initWithObjects:itemBtnObj, nil];


Puede usar la barra de navegación a continuación para personalizar. En Storyboard tienes la opción de cambiar el color.

De lo contrario, puede configurar UIView para personalizar. Como abajo,


Puedes hacerlo desde el storyboard en sí. Arrastra la barra de navegación UIN

Personalice su navegación usando imágenes o colores de fondo dándoles sombras.

Agregar elemento de navegación

también puede personalizarlos usando imágenes o colores e imágenes y posición según los requisitos.

Para agregar restricciones a la misma, remítame a mi ans. Agregar restricciones a un UIBarButtonItem

Espero que ayude ... Feliz codificación ... :)