objective-c - navifationBar全透明设置问题
本文介绍了objective-c - navifationBar全透明设置问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
大家有没有遇到过这样的问题,我要设置导航栏全透明,在视图控制器的viewWillAppear方法里面设置如下:
[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar setShadowImage:[UIImage new]];
self.navigationController.navigationBar.translucent = YES;
for (UIView *imageView in self.navigationController.navigationBar.subviews) {
if ([NSStringFromClass([imageView class]) isEqualToString:@"_UIBarBackGround"]) {
imageView.alpha = 0.f;
}
}
但是出现了如附件图那样的显示,貌似我对_UIBarBackGround这个View的处理没起到作用!! 请大家指教一下,不胜感激!!
解决方案
tableView下移了64pt. 内容是无法在navigationBar
下面显示的.
你的tableView
的frame.origin
是(0, 64). 设为(0,0)就可以了.
再设置一下contentInset
, _tableView.contentInset = UIEdgeInsetsMake(64, 0, 0, 0);
self.automaticallyAdjustsScrollViewInsets = NO;
self.tableView.contentInset = UIEdgeInsetsMake(64, 0, 0, 0);
这篇关于objective-c - navifationBar全透明设置问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文