码代码时发现一个问题。平时没注意。现在记录一下
[self.navigationController setNavigationBarHidden:NO animated:YES]; 时导航栏没有显示
别人的代码翻了个底朝天。发现是ios机制问题。
[self.navigationController setNavigationBarHidden:YES animated:YES]; 隐藏的navigationbar需要用对应的
[self.navigationController setNavigationBarHidden:NO animated:YES]; 来显示。
[self.navigationController.navigationBar setHidden:YES]; 隐藏的代码需要
[self.navigationController.navigationBar setHidden:NO];来显示。
也就是说这个是成对出现的。
查看代码发现 setHidden是基于UIView的。
setNavigationBarHidden 是基于 UINavigationController的。
也没法看到实现,具体内部怎么实现的还不明确。。