iOS滑动tableView来改变导航栏的颜色
- (void)viewDidLoad {
[super viewDidLoad];
[self initTableView];
}
- (NSInteger)numberOfSectionsInTableView:(UITableView )tableView{
return 1;
}
- (NSInteger)tableView:(UITableView )tableView numberOfRowsInSection:(NSInteger)section{
return 10;
}
- (UITableViewCell )tableView:(UITableView )tableView cellForRowAtIndexPath:(NSIndexPath )indexPath{
UITableViewCell cell=[self tableViewZ:selfmyTableView cellForRowAtIndexPath:indexPath];
return cell;
}
- (UITableViewCell )tableViewZ:(UITableView )tableView cellForRowAtIndexPath:(NSIndexPath )indexPath{
UITableViewCell cell=[[UITableViewCell alloc]init];
return cell;
}
- (void)scrollViewDidScroll:(UIScrollView )scrollView{
NSLog(@"offset---scroll:%f",selfmyTableViewcontentOffsety);
UIColor color=[UIColor redColor];
CGFloat offset=scrollViewcontentOffsety;
if (offset<0) {
selfnavigationControllernavigationBarbackgroundColor = [color colorWithAlphaComponent:0];
}else {
CGFloat alpha=1-((64-offset)/64);
selfnavigationControllernavigationBarbackgroundColor=[color colorWithAlphaComponent:alpha];
}
}
- (void)initTableView{
selfmyTableViewdelegate=self;
selfmyTableViewdataSource=self;
}
具体情况:我的导航栏设置的是白色的,但是在iOS 13 的系统下,push过去的时候,会先变灰一下,然后正常。
那么这种情况出现的原因是什么?
那么我就应该在 didFinishLaunchingWithOptions 中设置 window 的背景颜色,
`selfwindowbackgroundColor = [UIColor whiteColor];`
不是。
因为我是在 viewWillAppear 中设置的背景色,所以会不会是在执行之前的颜色闪现出来。其实这个想法刚起来都觉得不对,viewWillAppear执行时,push的controllerViewview 应该展示的还是前一个。在viewload中试一下,不是完事。
在iOS 13之前,展示 黑线的类别为 UIImageView
在iOS 13之后,类名变成了 _UIBarBackgroundShadowView
而我刚好是通过遍历到UIImageView 来隐藏 下方黑色线条,所以在 iOS 13之后隐藏的就不是之前的线条了
所以需要根据 系统版本 判断一下。
可能下拉到了通知栏页面。
可以查看控制中心的调出方式:
一、OriginOS系统:
控制中心与通知中心分开显示:可通过屏幕顶部右侧下滑或底部上滑呼出控制中心:
控制中心与通知中心合并显示:可通过屏幕顶部下滑呼出控制中心;
二、出厂基于安卓10的Funtouch OS 10/iQOO UI及以上系统:顶部第一次下滑调出简易快速栏,顶部第二次下滑调出更多快捷选项及自定义选项;
(注:通过公测升级Funtouch OS 10/iQOO UI的机型和基于安卓9的Funtouch OS 10仍采用上滑调出快捷中心)
3、除二以外其他机型:根据返回方式的不同,则需使用手指从屏幕底部的左侧、右侧或顶部右侧区域滑动调出,可进入设置--系统导航了解;
三、若屏幕下方有按键:点击菜单键即可调出。
若下拉方式正确,但是控制中心显示空白,可以清除一下系统桌面的数据,再重启一下手机看看是否恢复。
进入设置--应用与权限/更多设置--应用管理--(右上角“”--显示系统程序)--找到系统桌面软件--存储,清除数据
注:清除桌面的数据会将手机桌面壁纸恢复为默认的,图标也是会重新为您排列
进入云服务/设备云备份/备份数据类型/开启系统数据,备份当前的布局信息。
若以上方法无效,可以进入vivo官网--点击我的—在线客服,输入“人工”联系在线客服处理。
欢迎分享,转载请注明来源:品搜搜测评网