躺坑了,self.navigationController.navigationBar setTranslucent:YES

使用https://github.com/coolbeet/CBStoreHouseRefreshControl中的CBStoreHouseRefreshControl做了一个组件,

死活执行不了,后来发现,修改导航图片了

if ([self.navigationController.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) {
        [self.navigationController.navigationBar setBackgroundImage:image
                                                      forBarMetrics:UIBarMetricsDefault];
    }

结果,发现下面这两个函数不在回调

#pragma mark - Notifying refresh control of scrolling
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    [self.storeHouseRefreshControl scrollViewDidScroll];
}

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
    [self.storeHouseRefreshControl scrollViewDidEndDragging];
}

正常情况下,页面加载时,会回调这两个方法,重新计算里面相关位置。

只有设置导航图片后,如果不设置

self.navigationController.navigationBar setTranslucent:YES

或者设置

self.navigationController.navigationBar setTranslucent:NO

都不能触发这个消息,真吭爹啊

时间: 2024-09-09 00:39:17

躺坑了,self.navigationController.navigationBar setTranslucent:YES的相关文章

UIToolbar UINavigationController UINavigationBar UIBarButtonItem

--------------------------------------------------------------------------------UIBarButtonItem-------------------------------------------------------------------------------- 1:  UIBarButtonItem 隐藏的方式 [self.btnPunctuation setWidth:0]; 2:  UIBarButto

iOS App开发中导航栏的创建及基本属性设置教程_IOS

文件目录如下:基本导航顺序: root -> First -> Second -> Third.其中,FirstViewController作为 navigation堆栈的rootview 1.创建navigation 如果是想直接把navigation导航作为项目一开始的跟视图,把RootViewController.h文件里的nav属性放到AppDelegate.h里即可,再把RootViewController.m文件里的action的代码复制到 AppDelegate.m里的di

界面-iOS开发 关于navigationBar一个诡异的问题

问题描述 iOS开发 关于navigationBar一个诡异的问题 事情是这样的,主容器是TabBarController,齐下有4个子界面,分别4个navigationController.之前好好的,在导入之前的业务代码后就出现了一个很奇葩的问题. 在模拟器中所有对navigationBar的设置都失效了.背景颜色没了,全部变成了这个颜色 相关代码 [self.navigationController.navigationBar setBarTintColor:[UIColor colorW

iOS swift 总结NavigationController出现问题及解决方法_IOS

IOS swift 总结NavigationController出现问题及解决方法 最近用Swift语言做了一些iOS项目,颇有些心得,记下一些深刻的问题造福自己,服务大家 1.以NavigationController做为容器后状态栏的字体颜色就会不在受系统的控制,要在NavigationController中的根ViewController中设置方可生效,代码如下: self.navigationController!.navigationBar.barStyle = UIBarStyle.

NavigationBar 和StatusBar同时消失出现

NavigationBar和StatusBar都有支持动画的系统接口: [[UIApplication sharedApplication] setStatusBarHidden:hidden withAnimation:UIStatusBarAnimationSlide]; [self.navigationController setNavigationBarHidden:hidden animated:animated]; 但是简单这样写的话,效果不太好,NavigationBar 和Sta

iOS中navigationController 去掉背景图片、去掉底部线条的核心代码_IOS

废话不多说了,直接给大家贴iOS中navigationController 去掉背景图片.去掉底部线条的核心代码,关键代码如下所示: //去掉背景图片     复制代码 代码如下:  [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault]; //去掉底部线条 复制代码 代码如下:     [self.navigatio

[译]开发者眼中 iOS 11 都更新了什么?

本文讲的是[译]开发者眼中 iOS 11 都更新了什么?, 原文地址:What's new in iOS 11 for developers 原文作者:Paul Hudson 译文出自:掘金翻译计划 译者: Swants 校对者: Danny1451 RichardLeeH 苹果在 2017 年全球开发者大会上公布了 iOS 11 , 其加入许多强大的功能,如 Core ML,ARKit,Vision,PDFKit,MusicKit 拖放等等. 我尝试着把主要变化在接下来的文章里总结了出来,并在

ios-删除导航栏中的半透明选项

问题描述 删除导航栏中的半透明选项 在storyboard创建了navigationController ,现在要删除它其中的半透明选项. 在appdelegate.m中: [[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:52.0/255 green:152.0/255 blue:219.0/255 alpha:1]]; [[UINavigationBar appearance] setTintColor:[

自定义UINavigationBar的背景【转】

from:http://cocoa.venj.me/blog/custom-navbar-background/ 为了让我们的应用程序更加美观,我们往往希望对iPhone自带的控件进行一点自定义.比如,本文即将要讲述的,给UINavigationBar加一个背景. 最简单的一个自定义方法就是修改一下背景色.方法非常简单,那就是使用它的tintColor属性: 1 self.navigationController.navigationBar.tintColor = [UIColor redCol