是因为UIApplicationDidChangeStatusBarFrameNotificationUIDeviceOrientationDidChangeNotification这两个通知不同引起的。UIDeviceOrientationDidChangeNotification会判断所有方向,比如屏幕向上,这时候width和height是不会变的,改成UIApplicationDidChangeStatusBarFrameNotification就好了