iOS 10 Beta使导航栏按钮和标题在pushViewController上消失

前端之家收集整理的这篇文章主要介绍了iOS 10 Beta使导航栏按钮和标题在pushViewController上消失前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
编辑:请在这里观看我的问题的视频:
https://www.dropbox.com/sh/lzgs9mahx5mea13/AADLYfLQix7MDleDN1ER81qVa?dl=0

我在应用程序商店中有一个应用程序,在iOS 9上运行得很好.

但是在iOS 10上(在具有最新测试版的设备iPhone 6s上测试),当选择主视图控制器上的单元格并且“推送”详细视图时,我的导航栏的标题和导航栏按钮消失.

只有后退按钮可见.

即使我通过单击后退按钮或向后滑动回弹给主人,他们也不会回来.弹出后,即使是“主人”标题和条形按钮也不见了.我不知道如何排除故障,因为没有错误.

在我的代码中,我没有在任何地方隐藏导航栏,也没有对导航控制器做任何奇特的事情.

视图层次结构insprector的屏幕截图:

注意标题和我的右边栏按钮如何在其他几个视图后面.后退按钮位于最前面.这表明按钮和标题没有隐藏,它们被3个额外的视图覆盖:UIVisualEffectView,_UIVisualEffectBackdropView和_UIVIsualEffectFilterView

同样在视频中,您会注意到如果我向后滑动一半,则取消滑动,条形按钮会返回.但标题却没有.

返回主人后,请注意主人的导航栏内容与其他2个私人类视图重叠:

我以编程方式推送详细信息:
相关代码

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    [self.tableView deselectRowAtIndexPath:indexPath animated:YES];

    PlaylistDetailViewController *pdvc = (PlaylistDetailViewController*)[self.storyboard instantiateViewControllerWithIdentifier:@"PlaylistDetailViewController"];
    pdvc.indexPath=indexPath;
    [self.navigationController pushViewController:pdvc animated:YES];
}

解决方法

我也遇到了这个问题,到目前为止建议的所有解决方案都是:

>太复杂了
>不起作用

最后我发现这是因为iOS10中UINavigationBar的更新绘制周期.

为了解决这个问题,我必须解决这个问题:

self.navigationController.navigationBarHidden = YES;
self.navigationController.navigationBarHidden = NO;

它基本上是触发导航栏重绘.

它仍然很烦人,他们怎么能推出一个新版本的操作系统,打破这个重要的东西.

猜你在找的iOS相关文章