UINavigationBar自定义导航栏背景和按钮,完美支持横屏竖屏旋转,视图控制器可以分别使用自己的导航栏
此方法可以通过Apple审核,导航上的按钮背景需要做,否则看起来不那么和之又谐
- //CustomNavigationBar.h
- @interface UINavigationBar (UINavigationBarCategory)
- UIImageView *backgroundView;
- - (void)setBackgroundImage:(UIImage*)image;
- - (void)insertSubview:(UIView *)view atIndex:(NSInteger)index;
- @end
-
- //CustomNavigationBar.m
- @implementation UINavigationBar (UINavigationBarCategory)
- -(void)setBackgroundImage:(UIImage*)image
- {
- if(image == nil)
- {
- [backgroundView removeFromSuperview];
- }
- else
- {
- backgroundView = [[UIImageView alloc] initWithImage:image];
- backgroundView.tag = 1;
- backgroundView.frame = CGRectMake(0.f, 0.f, self.frame.size.width, self.frame.size.height);
- backgroundView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- [self addSubview:backgroundView];
- [self sendSubviewToBack:backgroundView];
- [backgroundView release];
- }
- }
-
- //for other views
- - (void)insertSubview:(UIView *)view atIndex:(NSInteger)index
- {
- [super insertSubview:view atIndex:index];
- [self sendSubviewToBack:backgroundView];
- }
- @end
-
- //YourViewController.m
- - (void)viewWillAppear:(BOOL)animated
- {
- [super viewWillAppear:animated];
- [self.navigationController.navigationBar
- setBackgroundImage:[UIImage imageNamed:@"navigation_bar_bg.png"]];
- }
分享到:
相关推荐
代码受https://github.com/ltebean/LTNavigationBar/启发,将其Objective-C的代码更改为swift代码,实现了UINavigationBar的扩展,代码调用非常简单,只需要一句话即可实现导航栏的颜色变更,十分适合需要做个性化...
自定义UINavigationBar。自定义导航条的按钮,包括增加按钮、segments等等。在导航条左边、中间、右边增加按钮或其他控件。源码天堂IOS源码频道免费提供下载。
一、导航栏UINavigationBar 1、导航栏的使用 在iOS开发中,我们通常会使用导航控制器,导航控制器中封装了一个UINavigationBar,实际上,我们也可以在不使用导航控制器的前提下,单独使用导航栏,在UINavigationBar...
解决UINavigationBar 自定义 leftBarButtonItem 点击范围过大的问题
一个UINavigationBar分类,可以动态改变导航栏的透明度以及大小
自定义UINavigationBar。自定义导航条的按钮,包括增加按钮、segments等等。在导航条左边、中间、右边增加按钮或其他控件。 注意:请在Mac下解压使用
自定义导航条,包括颜色、图片以及上面的按钮。在iOS5.0以上版本,要想navigation bar上面也能显示木质图片,要更改“WoodUINavigationAppDelegate.m”文件的一段代码:[navigationController.navigationBar ...
仔细观察,我 页面和 收藏 页面的导航栏背景颜色不一样,但是都有毛玻璃效果 收藏 页面往上滑动到一定程度时,导航栏会出现 shadowImage,此时如果右滑返回,导航栏依然在 收藏 页保留 shadowImage,然而 我 页面却...
WXNavigationBar ... 支持导航栏背景图片 支持导航栏大标题模式 支持iOS 13暗模式 支持全屏弹出手势 就像使用UINavigationBar一样简单 要求 iOS 9.0以上 Xcode 11.0以上 迅捷5.0+ 安装 可可豆 WXNavigat
此示例演示了在导航栏的右侧放置三种UIBarButtonItems:带标题的按钮,带图像的按钮和带UISegmentedControl的按钮。 附加的分段控件允许用户在这三个之间切换。 通过将Bar Button Item拖出对象库并拖到导航栏中,...
一个自定义导航栏(UINavigationBar)背景,圆角和阴影的category,使用起来很方便
完全自定义导航条。没有UINavigationBar 和 UINavigationItem 这两个类。完全是对UIView的操作。 所有操作都能一行代码,操作之间完全独立,互不影响。完美适配iOS 11和iPhone X , 欢迎到github上下载最新库:...
一款超级简单的导航条管理工具。完全自定义导航条。没有UINavigationBar 和 UINavigationItem 这两个类。完全是对UIView的操作。
本篇文章主要介绍了iOS如何去掉导航栏(UINavigationBar)下方的横线,非常具有实用价值,需要的朋友可以参考下
功能安装使用说明#功能支持以下视图元素:UINavigationBar UINavigationBar和UIToolbar UINavigationBar和UITabBar UINavigationBar和Custom UITabBar(例如,超出中心按钮)支持功能:滚动时隐藏/显示控件单独隐藏...
Apple 分享展示了如何通过设置自定义后退按钮、右视图、标题、背景颜色来更改导航栏的外观,以及如何制作酷炫的效果,使栏看起来延伸,允许我们附加其他视图,例如标签。 展示了如何在导航栏中嵌入分段控件(如 ...
UINavigationBar-FixedHeightWhenStatusBarHidden 通常,在iOS 7+上,显示状态栏时,导航栏的高度等于64 px。 隐藏后,高度默认更改为44像素。 此类别将属性fixedHeightWhenStatusBarHidden添加到UINavigationBar类...
通过手势来返回上一页。也可以通过左上角按钮返回。UINavigationBar自定义的
SQTShyNavigationBar 缩小(害羞)的导航栏,随着用户滚动而自动调整,具有可自定义的全高和害羞高度。 我们的目标是尽可能强大,平稳地处理棘手的极端情况-即使这对您(开发人员)来说需要更多的集成工作。如何开始...