关闭

UITabBar实现中间大按钮

标签: UITabbar中间大按钮
881人阅读 评论(0) 收藏 举报
分类:


原理非常简单,把中间tab bart item的图设为一个大图就可以了。
缺点就是超出tab bar的部分是不能点击的。


//设置tab bar 中间item的图为大图标    

UIViewController* vc = [UIViewController new];

UINavigationController* nav = [[UINavigationController alloc] initWithRootViewController:vc];

[vcs addObject:nav];

nav.tabBarItem.image = [[UIImage imageNamed:@"jdstreetNew_up"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

nav.tabBarItem.selectedImage = [[UIImage imageNamed:@"jdstreetNew_up"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];


//隐藏tab bar顶部的分隔线。否则顶部的分隔线将压在中间大图标的上面。

{

    //设置tab bar的背景图后setShadowImage才有效。

    {

        CGRect rect = CGRectMake(0, 0, self.view.frame.size.width, 44);

        UIGraphicsBeginImageContext(rect.size);

        CGContextRef context = UIGraphicsGetCurrentContext();

        //CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);

        CGContextSetFillColorWithColor(context, [[UIColor colorWithRed:247/255.0

                                                                 green:247/255.0

                                                                  blue:247/255.0

                                                                 alpha:1] CGColor]);

        CGContextFillRect(context, rect);

        UIImage *img = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

        

        [self.tabBar setBackgroundImage:img];

    }


    //将tab bar顶部的分隔线设置为不可见。

[self.tabBar setShadowImage:[UIImage new]];

}



中间tabbar的icon

     


最后的效果:



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:203385次
    • 积分:3730
    • 等级:
    • 排名:第8981名
    • 原创:163篇
    • 转载:1篇
    • 译文:0篇
    • 评论:13条
    文章分类
    最新评论