我在我的应用程序中实现了一个程序化旋转锁定,类似于亚马逊的 Kindle 应用程序:当设备旋转时,会显示一个锁定按钮;按下按钮,方向锁定为按下按钮时界面所在的方向。
解锁后,我想让界面旋转到当前设备方向。假设您锁定纵向旋转,将设备向左横向旋转,然后解锁;我希望界面然后向左旋转。这是切换锁的方法:
- (IBAction)toggleRotationLock:(UIButton *)sender {
BOOL rotationLocked = [_defaults boolForKey:@"RotationLocked"];
if (rotationLocked) { //unlock rotation
[_defaults setBool:NO forKey:@"RotationLocked"];
/* force rotation to current device orientation here?
* ...
*/
} else { //lock rotation to current orientation
[_defaults setBool:YES forKey:@"RotationLocked"];
[_defaults setInteger:self.interfaceOrientation forKey:@"RotationOrientation"];
}
[_defaults synchronize];
[self setupRotationLockButton];
}
有什么办法可以做到这一点?