iOS 改变导航栏高度

需求: appdelegate里 rootviewcontroller 是tabbarcontroller,tabbarcontroller里有4个navigationcontroller,改变每个navigationbar的高度

问题参考SO里的方法:,在每个controller里的viewwillappear添加这样的方法:然而没卵用

- (void)viewWillAppear {

UINavigationBar *navigationBar = [[self navigationController] navigationBar];
CGRect frame = [navigationBar frame];
frame.size.height = 82.0f;
[navigationBar setFrame:frame];
}

下面这条解答是有效的,添加了一个naviagation的类别

https://gist.github.com/maciekish/c2c903d9b7e7b583b4b2

时间: 2024-08-06 14:17:39

iOS 改变导航栏高度的相关文章

ios 获取导航栏和状态栏高度,针对iPhoneX

因为iPhoneX的产生,原本的导航栏再也不是44了,那么会出现什么问题呢?在隐藏导航栏的页面,原本的高度要向上调整一个导航栏+状态栏的高度.那么iPhoneX的导航栏高度不是44了,我们需要手动获取, 有导航栏的,代码如下: 1 2 3 4 5 6 //获取状态栏的rect CGRect statusRect = [[UIApplication sharedApplication] statusBarFrame]; //获取导航栏的rect CGRect navRect = self.navi

iOS 为导航栏自定义按钮图案Button Image 运行出来的颜色与原本颜色不一样 -解决方案

为相机制作闪光灯,在导航栏自定义了"闪光"图案,希望点击时变换图片,但是一直没有改变,原来是因为设置了Global Tint的颜色,所以系统会自动把图片的颜色改为Global Tint的颜色. 解决方案,设置图片时,添加:imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal 源码: - (void) setFlashOn:(BOOL)isOn { if (self.captureDevice.hasFlash) { UIIm

动态 改变导航栏透明度

#pragma mark - 实现代理方法  UINavigationBarDelegate 改变导航栏的颜色等功能 - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated { self.navigationController.naviga

获取Android屏幕尺寸、控件尺寸、状态栏/通知栏高度、导航栏高度

1.获取Android屏幕尺寸 我们可以通过getSize()方法获得屏幕的尺寸 Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); int width = size.x; int height = size.y; 1 2 3 4 5 如果不是在Activity里面,则无法使用getWindowManager(),此时可以使用WINDO

状态栏高度 ~导航栏高度

// 状态栏高度 CGFloat  StatusH=[UIApplication sharedApplication].statusBarFrame.size.height; // 导航栏高度 CGFloat   NavH=self.navigationController.navigationBar.frame.size.height;

iOS 去掉导航栏的边界黑线&去掉搜索框的边界黑线和其中文本输入框的阴影 - 解决方案

去掉导航栏的边界黑线 in viewDidload: [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault]; self.navigationController.navigationBar.shadowImage = [[UIImage alloc] init]; 去掉搜索框的边界黑线 in viewDidload:

iOS 获取导航栏和状态栏的高度

CGRect rect = [[UIApplication sharedApplication] statusBarFrame]; 状态栏的高度: float status height =  rect.size.height; 导航栏的高度: float navigationheight = self.navigationController.navigationBar.frame.size.height;

iOS中修改导航栏高度

有时候需要修改导航栏的高度,可以这样修改: UINavigationBar *bar = [self.navigationController navigationBar]; CGFloat navBarHeight = 30.0f; CGRect rect = CGRectMake(0, 20, self.window.frame.size.width, navBarHeight); [bar setFrame:rect];

ios UINavigationController 导航栏

1.关于导航栏左右两边的按钮 1.隐藏导航栏上的返回字体 //Swift UIBarButtonItem.appearance().setBackButtonTitlePositionAdjustment(UIOffsetMake(0, -60), forBarMetrics: .Default) //OC [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarM