UIBarButtonItem 自定义

本文详细介绍了如何通过设置导航控制器的头部和底部元素,包括隐藏顶部导航栏、显示底部工具栏,并自定义工具栏按钮样式与布局,实现iOS应用中的个性化UI设计。
 [self.navigationController setNavigationBarHidden:YES animated:NO];//去掉头部bar

    [self.navigationController setToolbarHidden:NO animated:NO];  //显示底部bar


 
    UIImage *title_bg = [UIImage imageNamed:@"homeToolBarBg.png"];  //获取图片
    CGSize titleSize = self.navigationController.navigationBar.bounds.size;  //获取Navigation Bar的位置和大小
    title_bg = [UtilsHelper scaleToSize:title_bg size:titleSize];//设置图片的大小与Navigation Bar相同
 
 

    mEditController = [[EditViewController alloc] init];
    
    UIButton *delBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    [delBtn setFrame:CGRectMake(60, self.view.frame.size.height-16-25, 25, 25)];
    [delBtn setImage:[UIImage imageNamed:@"homeDelete.png"] forState:UIControlStateNormal];
    [delBtn addTarget:self action:@selector(delItemAction:) forControlEvents:UIControlEventTouchUpInside];
    UIBarButtonItem *delBarBtn = [[UIBarButtonItem alloc]initWithCustomView:delBtn];
    [delBtn setShowsTouchWhenHighlighted:YES];//设置发光
    
    UIButton *playBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    [playBtn setFrame:CGRectMake(60, self.view.frame.size.height-16-25, 25, 25)];
    [playBtn setImage:[UIImage imageNamed:@"homePlay.png"] forState:UIControlStateNormal];
    [playBtn addTarget:self action:@selector(playItemAction:) forControlEvents:UIControlEventTouchUpInside];
    UIBarButtonItem *playBarBtn = [[UIBarButtonItem alloc]initWithCustomView:playBtn];
    [playBtn setShowsTouchWhenHighlighted:YES];//设置发光
    
    UIButton *shareBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    [shareBtn setFrame:CGRectMake(60, self.view.frame.size.height-16-25, 25, 25)];
    [shareBtn setImage:[UIImage imageNamed:@"homeShare.png"] forState:UIControlStateNormal];
    [shareBtn addTarget:self action:@selector(shareItemAction:) forControlEvents:UIControlEventTouchUpInside];
    UIBarButtonItem *shareBarBtn = [[UIBarButtonItem alloc]initWithCustomView:shareBtn];
    [shareBtn setShowsTouchWhenHighlighted:YES];//设置发光
     
    UIButton *addBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    [addBtn setFrame:CGRectMake(60, self.view.frame.size.height-16-25, 25, 25)];
    [addBtn setImage:[UIImage imageNamed:@"homeAdd.png"] forState:UIControlStateNormal];
    [addBtn addTarget:self action:@selector(addItemAction:) forControlEvents:UIControlEventTouchUpInside];
    UIBarButtonItem *addBarBtn = [[UIBarButtonItem alloc]initWithCustomView:addBtn];
    [addBtn setShowsTouchWhenHighlighted:YES];//设置发光
    
 
    UIBarButtonItem *flexItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
 
    [self setToolbarItems:[NSArray arrayWithObjects:flexItem, delBarBtn, flexItem, playBarBtn, flexItem, shareBarBtn, flexItem, addBarBtn , flexItem, nil]];
 
    self.navigationController.toolbar.translucent=YES;
    [self.navigationController.toolbar setBackgroundImage:title_bg forToolbarPosition:0 barMetrics:0];//设置底部bar背景图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值