KMNavigationBarTransition icon indicating copy to clipboard operation
KMNavigationBarTransition copied to clipboard

navigationController?.navigationBar.shadowImage 设置异常失效

Open yuanyedehuhuan opened this issue 4 years ago • 2 comments
trafficstars

在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()。只有这样后续操作才能正常。

yuanyedehuhuan avatar May 13 '21 10:05 yuanyedehuhuan

我也碰到这个问题了, 我是需要都隐藏, 但是设置[self.navigationController.navigationBar setShadowImage:[UIImage new]];和 navigationBarAppearance.shadowColor = [UIColor clearColor]; navigationBarAppearance.shadowImage = [UIImage new];都不行

zedxpp avatar Oct 07 '21 05:10 zedxpp

遇到一样的问题,尝试在 [UIViewController (KMNavigationBarTransition) km_addTransitionNavigationBarIfNeeded] 里强制设置,倒是有用

bar.standardAppearance.shadowImage = [UIImage new];
bar.standardAppearance.shadowColor = [UIColor clearColor];
bar.scrollEdgeAppearance.shadowImage = [UIImage new];
bar.scrollEdgeAppearance.shadowColor = [UIColor clearColor];

zealforbeing avatar Oct 12 '21 08:10 zealforbeing