工具栏和导航栏坏动画

时间:2011-08-24 08:35:15

标签: iphone objective-c ios

我想做的是以横向模式旋转并将工具栏和导航栏保留在(垂直于工具栏的右侧,垂直于导航栏的左侧),但仅旋转视图和图标在工具栏和导航栏上.. 我到目前为止所做的是使用willAnimateSecondHalfofRotation。当去景观模式时,位置是我想要的,但我可以看到从旋转的过渡,它看起来很糟糕。我想要做的是像iphone的相机只有工具栏的图标正在旋转......

你可以帮帮我吗? 提前致谢。 咯

1 个答案:

答案 0 :(得分:1)

  1. 禁用自动旋转:

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    }
    
  2. 注册UIDeviceOrientationDidChange通知:

    [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(orientationChanged:)
                                                 name:UIDeviceOrientationDidChangeNotification
                                               object:nil];
    
  3. 响应设备方向更改:

    - (void)orientationChanged:(NSNotification *)notification {
        // Adjust views according to [[UIDevice currentDevice] orientation];
    }
    
  4. 不要忘记取消注册

    [[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
    [[NSNotificationCenter defaultCenter] removeObserver:self];