KMNavigationBarTransition
KMNavigationBarTransition copied to clipboard
navigationController?.navigationBar.shadowImage 设置异常失效
在demo中测试,第一个页面(Title 1)在 viewDidLoad 中设置为 navigationController?.navigationBar.shadowImage = UIImage(),即隐藏导航栏横线。第二个页面(Title 2)在 viewDidLoad 中设置为 navigationController?.navigationBar.shadowImage = nil,即显示导航栏横线。
设置完毕,点击从 Title 1 跳转到 Title 2,会出现横线显示异常,push过程中横线是显示的,当跳转完成时横线消失,之后无论怎么设置都不好使了。
经过测试,发现需要保证第一个页面显示横线,或者至少保证在 viewDidAppear 之前显示横线,如果需要第一个页面隐藏横线,就在 viewDidAppear 中设置 navigationController?.navigationBar.shadowImage = UIImage()。只有这样后续操作才能正常。
我也碰到这个问题了, 我是需要都隐藏, 但是设置[self.navigationController.navigationBar setShadowImage:[UIImage new]];和 navigationBarAppearance.shadowColor = [UIColor clearColor]; navigationBarAppearance.shadowImage = [UIImage new];都不行
遇到一样的问题,尝试在 [UIViewController (KMNavigationBarTransition) km_addTransitionNavigationBarIfNeeded] 里强制设置,倒是有用
bar.standardAppearance.shadowImage = [UIImage new];
bar.standardAppearance.shadowColor = [UIColor clearColor];
bar.scrollEdgeAppearance.shadowImage = [UIImage new];
bar.scrollEdgeAppearance.shadowColor = [UIColor clearColor];