2011-05-29 73 views
0

人,你怎么实际上减慢方向旋转时使用“willAnimateSecondHalfOfRotationFromInterfaceOrientation:”方法?旋转 - 减慢使用willAnimateSecondHalfOfRotationFromInterfaceOrientation

目前,我有这样的:

-(void) willAnimateSecondHalfOfRotationFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
                 duration:(NSTimeInterval)duration { 
    [self positionViews]; 
} 

而且据我所知,当自动旋转确实发生这种“willAnimate2ndHalf ......”方法被调用 - 以及我在哪里真正得到改变其持续时间值?

回答

1

如果您想更改应用旋转的整体时间,则无法完成。 willAnimateSecondHalfOfRotationFromInterfaceOrientation用于添加自定义代码,如设置自定义坐标,属性等等。

+0

好吧,有一些方法可以减慢或加速旋转 - 否则就不会有方法的“持续时间”参数。在官方的Apple文档中,它表示:“参数 fromInterfaceOrientation: 旋转前应用程序用户界面方向的状态。可能的值在UIInterfaceOrientation中描述 持续时间: 未决旋转后半部分的持续时间,以秒为单位“。因此,似乎可以提供持续时间值,可以是高或低 - 快或慢,你不同意吗? – Sirab33 2011-05-30 08:33:43

+0

是的,你可以,如果你打电话给这种方法。但是,如果您正在旋转设备,则会自动调用(通过UIApplication,我相信),并且您无法访问呼叫属性。你可以做的就是关闭所有屏幕对象的自动旋转,并实现你自己的方法,监听UIDeviceOrientationDidChangeNotification。然后你将不得不手动动画和定位你的对象的旋转。真的,你在这里重新发明轮子。 – 2011-05-30 12:12:15