jazysyu / jznavigationextension Goto Github PK
View Code? Open in Web Editor NEWJZNavigationExtension integrates some convenient features for UINavigationController and easy to use.
License: MIT License
JZNavigationExtension integrates some convenient features for UINavigationController and easy to use.
License: MIT License
有A,B,C三个ViewController。A->B, B在viewWillAppear里self.navigationController.interactivePopGestureRecognizer.enabled = NO;禁止右滑返回,然后B->C后
C的整个界面卡住无反应了。。
(C在viewWillAppear里设置了self.navigationController.interactivePopGestureRecognizer.enabled = YES或B在viewDidDisappear里设置了self.navigationController.interactivePopGestureRecognizer.enabled = YES界面都是卡住的)
崩溃的原因:*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIPercentDrivenInteractiveTransition 0x14cfab5f0> valueForUndefinedKey:]: this class is not key value coding-compliant for the key __parent.'
*** First throw call stack:
(0x184b4cf5c 0x19973ff80 0x184b4cc1c 0x185a51d90 0x1859a40cc 0x1000c7334 0x1000c7790 0x18a43099c 0x18a5fbb28 0x18a242a5c 0x18a0d56ac 0x18a5fce78 0x18a095118 0x18a0931ec 0x18a0d3564 0x18a0d2ac8 0x18a0a3a2c 0x18a0a1f18 0x184b045a4 0x184b04038 0x184b01d38 0x184a30dc0 0x18fb84088 0x18a10af60 0x10005e698 0x199f6a8b8)
libc++abi.dylib: terminating with uncaught exception of type NSException
提示没有这个__parent这个key。
崩溃的位置:
如果我用了- (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated方法,设置堆栈,推出的VC上面经常会出现白条,我又模仿你其他的push方法,把这个setViewControllers方法也重写了一下,没事了。
但是我发现如果我用setViewControllersse后,快速推出栈的话界面很容易报Thread 1:EXC_BAD_ACCESS(code=1,address=0x10)错误,是不是block出现问题了
点击item快速进去push时,你jz_pushViewController:(UIViewController *)viewController animated:(BOOL)animated completion:(_jz_navigation_block_t)completion 方法内的操作会对导航栏有影响,变成空白栏,如果注释掉一部分代码,只保留[self jz_pushViewController:viewController animated:animated]; 就没问题,希望修复
jz_wantsNavigationBarVisible不好用了,手势返回到一半停住,navigationbar就已经完全显示并且覆盖页面了、如果继续放开手势返回(弹回当前页),navigationbar仍然处于显示
如题。用起来非常好用也解决了我所有问题。但是发现private。就想问下可以上架不
另外兼容是从多少到多少的
fullScreenInteractivePopGestureRecognizer 设置为YES 后,
push后的页面,页面中有按钮,按钮相关高亮点击状态失效。
如题,本意滑动列表,结果触发了滑动返回,体验并不好,最新的代码如何关闭这个特性
A设置 self.jz_wantsNavigationBarVisible=yes
B设置 self.jz_wantsNavigationBarVisible=no
A-->B 然后 B返回A,navigation就不见了,这个代码在1.4.7可以用,感觉作者把自己都绕晕。1.4.0那种方法很好,在需要改变navigation的时候才改变,不需要的时候就不需要写多余的东西
当第一个controller隐藏NavBar,push到第二个controller(第二个controller不隐藏navBar),向下或向上任意拖动一下(不pop到第一个controller),第二个controller的NavBar被一块黑色(或白色)的替代了
问题已解决...
旧版本的NavigationBar的颜色是黑色正常,JZNavigationExtension切换到目前最新版后NavigationBar的颜色变为白色了,望解答,是我使用姿势不正确么?谢谢
.....整个项目里面的都要改,而且改了之后出现了 navigationBar 消失的问题。
V1.4.1在进入到一个VC的时候马上(在viewDidLoad或者viewDidAppear中)push到下一个VC,之前设置好的bartintcolor就会丢掉,延迟一会再push就没有问题,是不是bartintcolor在比较迟的生命周期函数才设置的。
push前隐藏了,但在push的控制器中不能设置再显示出来了
在自己的viewdidload下wantsNavigationBarVisible的设置无效是吗
我看你写的 好6啊,但是我有个问题,就是你做出来的动画,是用什么录屏软件啊?可否告知一二。。
presentViewController 控制器的时候,如何禁用您的黑魔法呢,
比如一个baseNAV
我想presentViewController到一个新的NAV,如何才能使新的NAV不是baseNAV呢(NAV:导航控制器)
地图的页面Navigation Hide 了,滑动地图push ViewController 第二个页面的Navigation 也跟着隐藏了
在push 第二个 ViewController 设置了 显示Navigation , 效果没出来
我只关心一个可以上架吗
RT
你这里设置为0.9是为何?
从隐藏navigationBar的VC_A push 到隐藏navigationBar的VC_B,滑动B,但不返回,之后再明确返回到VC_A,进入其他不隐藏navigationBar的VC_C后,在push一个不隐藏navigationBar的VC_D上面的barButtonItem会闪一下VC_D的navigationitems,随后显示C的navigationitems
上边说的和绕口令一样...出现这个问题,很奇怪.我试了FDFullscreenPopGesture,也会出现相同的问题.
如果时间充裕,还是希望能有回复的.多谢~
补充一点,刚才说的VC_A的navigationController在tabbarController中,版本用的是1.3.0
就是uinavigationController的rootviewController的导航栏隐藏不了
V1.4.0 最新版本,启用相机presentViewController出现白色导航条
一开始以为我自己的库有问题,找了很久,怎么出现一个白色导航
把附件的中的两个类,覆盖最新Demo中的,点击 相机 按钮,就可以重现这个bug
Uploading ViewController.zip…
从 Controller A (隐藏了导航栏)进入搜索 UISearchDisplayController(搜索 Controller),然后搜索push 进入 COntroller B(同样隐藏导航栏),此时拖动 controller B 一段距离后放开(不要返回到 Controller A,依然在 Controller B 中),此时本来 controller B 隐藏的导航栏出现了....
2016-04-05 17:35:59.145 JZNavigationExtensionDemo[15819:330009] Came from ViewController Class.
2016-04-05 17:36:02.272 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:36:02.542 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:36:02.542 JZNavigationExtensionDemo[15819:330009] <SecondViewController: 0x7ffc49ca3740>
2016-04-05 17:36:03.430 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:36:03.715 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:36:03.716 JZNavigationExtensionDemo[15819:330009] <SecondViewController: 0x7ffc49ca3740>
2016-04-05 17:36:12.323 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:36:13.617 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:36:13.617 JZNavigationExtensionDemo[15819:330009] <SecondViewController: 0x7ffc49ca3740>
2016-04-05 17:36:26.948 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:36:27.033 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been finished
2016-04-05 17:36:27.034 JZNavigationExtensionDemo[15819:330009] <SecondViewController: 0x7ffc49ca3740>
2016-04-05 17:36:28.256 JZNavigationExtensionDemo[15819:330009] Came from ViewController Class.
2016-04-05 17:36:32.503 JZNavigationExtensionDemo[15819:330009] Controller will push to another.
2016-04-05 17:36:33.783 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been finished
2016-04-05 17:36:33.783 JZNavigationExtensionDemo[15819:330009] <UIViewController: 0x7ffc49f33240>
2016-04-05 17:36:36.206 JZNavigationExtensionDemo[15819:330009] Controller will push to another.
2016-04-05 17:36:38.181 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:36:38.181 JZNavigationExtensionDemo[15819:330009] <UIViewController: 0x7ffc49c40940>
2016-04-05 17:36:38.249 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:36:40.539 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:36:40.540 JZNavigationExtensionDemo[15819:330009] <UIViewController: 0x7ffc49c40940>
2016-04-05 17:36:40.561 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:36:43.360 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been finished
2016-04-05 17:36:43.360 JZNavigationExtensionDemo[15819:330009] <UIViewController: 0x7ffc49c40940>
2016-04-05 17:36:55.110 JZNavigationExtensionDemo[15819:330009] Controller will push to another.
2016-04-05 17:36:56.328 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been finished
2016-04-05 17:36:56.328 JZNavigationExtensionDemo[15819:330009] <UIViewController: 0x7ffc49cac5c0>
2016-04-05 17:36:58.696 JZNavigationExtensionDemo[15819:330009] Controller will push to another.
2016-04-05 17:37:00.576 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been finished
2016-04-05 17:37:00.576 JZNavigationExtensionDemo[15819:330009] <UIViewController: 0x7ffc49d6cef0>
2016-04-05 17:37:01.579 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:37:01.600 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:37:01.600 JZNavigationExtensionDemo[15819:330009] <SecondViewController: 0x7ffc49f26650>
2016-04-05 17:37:02.473 JZNavigationExtensionDemo[15819:330009] Controller will be poped.
2016-04-05 17:37:04.861 JZNavigationExtensionDemo[15819:330009] Interactive pop transition has been canceled
2016-04-05 17:37:04.862 JZNavigationExtensionDemo[15819:330009] <SecondViewController: 0x7ffc49f26650>
2016-04-05 17:37:06.066 JZNavigationExtensionDemo[15819:330009] Controller will push to another.
2016-04-05 17:37:06.571 JZNavigationExtensionDemo[15819:330009] *** Assertion failure in -[NavigationController _setViewControllers:transition:animated:operation:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3512.60.7/UINavigationController.m:983
2016-04-05 17:37:06.586 JZNavigationExtensionDemo[15819:330009] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'All view controllers in a navigation controller must be distinct ((
"<ViewController: 0x7ffc49c24770>",
"<SecondViewController: 0x7ffc49f26650>",
"<UIViewController: 0x7ffc49d6cef0>",
"<UIViewController: 0x7ffc49d6cef0>"
))'
*** First throw call stack:
(
0 CoreFoundation 0x000000010920fd85 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x0000000108c81deb objc_exception_throw + 48
2 CoreFoundation 0x000000010920fbea +[NSException raise:format:arguments:] + 106
3 Foundation 0x00000001088cad5a -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 198
4 UIKit 0x0000000109e5d3d0 -[UINavigationController _setViewControllers:transition:animated:operation:] + 362
5 UIKit 0x0000000109e5c61c __54-[UINavigationController setViewControllers:animated:]_block_invoke + 1328
6 UIKit 0x0000000109e5c0be -[UINavigationController setViewControllers:animated:] + 901
7 JZNavigationExtensionDemo 0x0000000108764bd1 -[UINavigationController(JZExtension) jz_setViewControllers:animated:completion:] + 225
8 JZNavigationExtensionDemo 0x00000001087651cb -[UINavigationController(JZExtension) jz_setViewControllers:animated:] + 107
9 UIKit 0x000000010a6c0f25 -[_UIViewControllerTransitionCoordinator _applyBlocks:releaseBlocks:] + 300
10 UIKit 0x000000010a6bd785 -[_UIViewControllerTransitionContext _runAlongsideCompletions] + 149
11 UIKit 0x000000010a6bd4d8 -[_UIViewControllerTransitionContext completeTransition:] + 117
12 UIKit 0x0000000109c788a3 __53-[_UINavigationParallaxTransition animateTransition:]_block_invoke95 + 834
13 UIKit 0x0000000109d4053e -[UIViewAnimationBlockDelegate _didEndBlockAnimation:finished:context:] + 644
14 UIKit 0x0000000109d1d7ff -[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 241
15 UIKit 0x0000000109d1dbae -[UIViewAnimationState animationDidStop:finished:] + 80
16 QuartzCore 0x000000010e4333c8 _ZN2CA5Layer23run_animation_callbacksEPv + 308
17 libdispatch.dylib 0x000000010c0953eb _dispatch_client_callout + 8
18 libdispatch.dylib 0x000000010c07d1ef _dispatch_main_queue_callback_4CF + 1738
19 CoreFoundation 0x00000001091690f9 CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 9
20 CoreFoundation 0x000000010912ab99 __CFRunLoopRun + 2073
21 CoreFoundation 0x000000010912a0f8 CFRunLoopRunSpecific + 488
22 GraphicsServices 0x000000010dee5ad2 GSEventRunModal + 161
23 UIKit 0x0000000109c8ff09 UIApplicationMain + 171
24 JZNavigationExtensionDemo 0x000000010876818f main + 111
25 libdyld.dylib 0x000000010c0ca92d start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)
快速切换push跟pop导航条会变白色,应该是自动隐藏了
Non-public API usage:
The app references non-public selectors in Maizuo3.0: _isTransitioning, isInteractiveTransition, navigationTransitionView:didEndTransition:fromView:toView:
UIViewController *viewController = [UIViewController new];
viewController.hidesNavigationBarWhenPushed = YES;
[self.navigationController pushToViewController:viewController animated:YES];
场景:3d touch某一行cell进行预览将要跳转的新界面,此时偶尔(大概率)会出现crash,提示信息: this class is not key value coding-compliant for the key __parent
如何禁用单个viewcontroller的右滑返回,而不影响其他视图的滑动返回?
请问如何全局设置Nav的按钮样式呢
这个最新版本好像 有问题 在A push 到B的时候, B的jz_wantsNavigationBarVisible改为NO pop回来A的导航也不见了 在老版本中好像 这个还是好使用的
项目结构window-----navVC------tabbarVC。
我的首页的navigationBarBackgroundAlpha是会随着滚动变化的,默认第一次进入为0;
今天我发现,当我第一次进入应用,在不滚动的情况下,只点击了一个searchTitleView,第一次push时,push出的VC无论设置成什么值,第一次alpha总是和首页的alpha相同。
坏内存访问: [invocations makeObjectsPerformSelector:@selector(invoke)];
请问,(斗鱼TV和网易新闻页面pop切换效果)那种有导航栏的返回动画效果怎么做的呢?本级导航栏滑动返回的时候(pop),跟上一级的导航栏感觉是独立的效果,这个支持吗
在做项目的时候偶尔出现这种情况。。app退出重启才没问题。
style是black,1.3.4版本导航条会变为白色,1.3.2版本正常
push以后bar变成白色的了,望解答
描述:当在一个controller中调用setInteractivePopGestureRecognizerCompletion它时,发现在同一个navigationController中,任何一个滑动返回都会掉用这个方法。
我试着在这个setInteractivePopGestureRecognizerCompletion完成时,用navigationController.interactivePopedViewController来获取当前的controller做判断,但是获取不到这个controller。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.