ios7中导航栏push时的动画发生了改变,我猜测:它的原理是在push之前会为上一个界面拍一张快照。而在push时会把将要出现的控制器的根视图拿过来先放在上面,而快照对应的一个视图会向左推出去,同时,将要出现控制器的子视图则会从右边进来。
基于以上原理,当我们push的时候出现阴影时,可能是因为我们将要出现的控制器根视图是透明。
我遇上两个类似问题:
1、因为我在baseViewController里面将根视图控制器设为透明,从而出现问题;
2、今天遇到一个问题,而且是第二次遇到,这才决定记录下来。问题是我的一个同事用xib创建控制器时,根视图选择直接是tableView,而ios7中tableView默认的背景都是透明的,所以也出现类似问题。
解决办法;找到根控制器,设置他的背景色
[self.view setBackgroundColor:[UIColor whiteColor]];
转自:http://blog.csdn.net/lcg0412/article/details/16845233