Search code examples
iphoneuinavigationcontrolleruibuttonuinavigationitem

how do i achieve this on navigationBar


i want design my navigationBar like following figure, how can i achieve this.is it possible on navigationBar or i don't need navigationBar. Topics & settings must be buttons, because i want to navigate to another viewController
enter image description here


Solution

  • i did this ,see below code

    //IvisionApps Button
        UIButton *ivisionButton= [UIButton buttonWithType:UIButtonTypeCustom];
        UIImage *ivisionButtonImage = [UIImage imageNamed:@"ivisionapps"];
        UIImage *ivisionButtonImagePressed = [UIImage imageNamed:@"ivisionappsSelected"];
        [ivisionButton setBackgroundImage:ivisionButtonImage forState:UIControlStateNormal];
        [ivisionButton setBackgroundImage:ivisionButtonImagePressed forState:UIControlStateHighlighted];
         [ivisionButton addTarget:self action:@selector(goIVisionApp) forControlEvents:UIControlEventTouchUpInside];
        ivisionButton.frame = CGRectMake(-8, -20, 106, 38);
        UIView *backButtonView = [[UIView alloc] initWithFrame:CGRectMake(-8, -20, 106, 38)];
        backButtonView.bounds = CGRectOffset(backButtonView.bounds, -14, -7);
        [backButtonView addSubview:ivisionButton];
        UIBarButtonItem *backBarButton = [[UIBarButtonItem alloc] initWithCustomView:backButtonView];
        self.navigationItem.rightBarButtonItem = backBarButton;
    
    
    
        //Auxilaries Button
    
        UIButton *auxiliariesButton= [UIButton buttonWithType:UIButtonTypeCustom];
        UIImage *auxiliariesButtonImage = [UIImage imageNamed:@"Auxiliaries"];
        UIImage *auxiliariesButtonImagePressed = [UIImage imageNamed:@"AuxiliariesSelected"];
        [auxiliariesButton setBackgroundImage:auxiliariesButtonImage forState:UIControlStateNormal];
        [auxiliariesButton setBackgroundImage:auxiliariesButtonImagePressed forState:UIControlStateHighlighted];
        [auxiliariesButton addTarget:self action:@selector(goBack) forControlEvents:UIControlEventTouchUpInside];
        auxiliariesButton.frame = CGRectMake(-19, -20, 106, 38);
        UIView *auxiliariesButtonView = [[UIView alloc] initWithFrame:CGRectMake(-19, -20, 106, 38)];
        auxiliariesButtonView.bounds = CGRectOffset(auxiliariesButtonView.bounds, -14, -7);
        [auxiliariesButtonView addSubview:auxiliariesButton];
        UIBarButtonItem *auxiliariesBarButton = [[UIBarButtonItem alloc] initWithCustomView:auxiliariesButtonView];
        self.navigationItem.leftBarButtonItem = auxiliariesBarButton;
    
        //hide backBarButton of NavigationItem
        [self.navigationItem setHidesBackButton:YES];