BaseViewController中默认设置左右导航栏按钮代码

这部分代码没什么难度,不过每次都要重复的写进去,在这里记录一下 也给新人们节约一下时间


.h中

/**

 *  添加导航栏左边按钮

 *

 *  @param title     按钮title

 *  @param itemImage 按钮image

 */

- (void)addLeftItemWithTitle:(NSString *)title Image:(NSString *)itemImage;

/**

 *  添加导航栏右边按钮

 *

 *  @param title     按钮title

 *  @param itemImage 按钮image

 */

- (void)addRightItemWithTitle:(NSString *)title Image:(NSString *)itemImage;


/**

 *  导航来右边

 */

- (void)clickRight;

/**

 *  导航来左边边

 */

- (void)clickLeft;

/**

 *  添加导航栏左边按钮数组

 *

 *  @param title     按钮title

 *  @param itemImage 按钮image

 */


- (void)addLeftItemsWithTitle:(NSArray *)titleArr Image:(NSArray *)imageArr;

/**

 *  添加导航栏右边按钮

 *

 *  @param title     按钮title

 *  @param itemImage 按钮image

 */


- (void)addRightItemsWithTitle:(NSArray *)titleArr Image:(NSArray *)imageArr;

// 左边按钮点击 tag 区分点击的按钮

-(void)clickLeftItem:(UIBarButtonItem*)barButtonItem;

// 右边按钮点击 tag 区分点击的按钮

-(void)clickRightItem:(UIBarButtonItem*)barButtonItem;




.m中的实现代码

- (void)addLeftItemWithTitle:(NSString *)title Image:(NSString *)itemImage{

    UIBarButtonItem * leftButton = [[UIBarButtonItem alloc]

                                    initWithTitle:title

                                    style:UIBarButtonItemStylePlain

                                    target:self

                                    action:@selector(clickLeft)];

    leftButton.image = [UIImage imageNamed:itemImage];

    leftButton.tintColor=[UIColor colorWithRed:74/255.0 green:74/255.0 blue:74/255.0 alpha:1.0];

    self.navigationItem.leftBarButtonItem = leftButton;

}

- (void)addRightItemWithTitle:(NSString *)title Image:(NSString *)itemImage{

    UIBarButtonItem * rightButton = [[UIBarButtonItem alloc]

                                     initWithTitle:title

                                     style:UIBarButtonItemStylePlain

                                     target:self

                                     action:@selector(clickRight)];

    rightButton.image = [UIImage imageNamed:itemImage];

    rightButton.tintColor=[UIColor colorWithRed:74/255.0 green:74/255.0 blue:74/255.0 alpha:1.0];

    self.navigationItem.rightBarButtonItem = rightButton;

}

- (void)clickRight{


}

- (void)clickLeft{


}

- (void)addLeftItemsWithTitle:(NSArray *)titleArr Image:(NSArray *)imageArr{

    

    NSMutableArray *rightItems = [[NSMutableArray alloc]init];

    for (int i = 0; i<titleArr.count; i++) {

        UIBarButtonItem * rightButton = [[UIBarButtonItem alloc]

                                         initWithTitle:titleArr[i]

                                         style:UIBarButtonItemStylePlain

                                         target:self

                                         action:@selector(clickLeftItem:)];

        rightButton.image=[UIImage imageNamed:imageArr[i]];

        rightButton.tag = 100+i;

        rightButton.tintColor=[UIColor colorWithRed:74/255.0 green:74/255.0 blue:74/255.0 alpha:1.0];

        [rightItems addObject:rightButton];

    }

    

    //    self.navigationItem.leftBarButtonItem = rightButton;

    self.navigationItem.leftBarButtonItems = rightItems;

    

}

- (void)addRightItemsWithTitle:(NSArray *)titleArr Image:(NSArray *)imageArr{

    

    NSMutableArray *rightItems = [[NSMutableArray alloc]init];

    for (int i = 0; i<titleArr.count; i++) {

        UIBarButtonItem * rightButton = [[UIBarButtonItem alloc]

                                         initWithTitle:titleArr[i]

                                         style:UIBarButtonItemStylePlain

                                         target:self

                                         action:@selector(clickRightItem:)];

        rightButton.image=[UIImage imageNamed:imageArr[i]];

        rightButton.tag = 1000+i;

        rightButton.tintColor=[UIColor colorWithRed:74/255.0 green:74/255.0 blue:74/255.0 alpha:1.0];

        [rightItems addObject:rightButton];

    }

    

//    self.navigationItem.leftBarButtonItem = rightButton;

    self.navigationItem.rightBarButtonItems = rightItems;

    

}

// 左边按钮点击

-(void)clickLeftItem:(UIBarButtonItem*)barButtonItem{

    switch (barButtonItem.tag-100) {

        case 0:

             NSLog(@"左边0");

            break;

        case 1:

            NSLog(@"左边1");

            break;

        default:

            NSLog(@"左边n");

            break;

    }

   

}

// 左边按钮点击

-(void)clickRightItem:(UIBarButtonItem*)barButtonItem{

    switch (barButtonItem.tag-1000) {

        case 0:

            NSLog(@"右边0");

            break;

        case 1:

            NSLog(@"右边1");

            break;

        default:

            NSLog(@"右边n");

            break;

    }

    

}



备注:添加多个的时候 使用addRightItemsWithTitle 文字 图片放入数组,数组不能为空,点击事件 根据tag值 判断,直接 再 实现界面 直接重写就可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值