【发布时间】:2016-03-31 12:29:51
【问题描述】:
当用户将屏幕旋转为横向时,我正在尝试使视频旋转并放大。
- (void) orientationChanged:(NSNotification *)note
{
bool switchedLeft;
UIDevice * device = note.object;
switch(device.orientation)
{
case UIDeviceOrientationPortrait:
self.videoView.transform=CGAffineTransformMakeScale(0.5,0.5);
if (switchedLeft) {
self.videoView.transform=CGAffineTransformMakeRotation(-M_PI_2);
}else{
self.videoView.transform=CGAffineTransformMakeRotation(M_PI_2);
}
break;
case UIDeviceOrientationLandscapeLeft:
self.videoView.transform=CGAffineTransformMakeRotation(M_PI_2);
self.videoView.transform=CGAffineTransformMakeScale(2.0, 2.0);
switchedLeft=true;
break;
case UIDeviceOrientationLandscapeRight:
self.videoView.transform=CGAffineTransformMakeRotation(-M_PI_2);
self.videoView.transform=CGAffineTransformMakeScale(2.0, 2.0);
switchedLeft=false;
break;
default:
break;
};
}
有很多问题。首先,当我最初旋转到横向时,它只进行一次转换,在这种配置中,它只是缩放它。
第二个问题是当我旋转到纵向时,它要求旋转,但它从不旋转。但是我可以在横向左侧和横向右侧之间来回移动并且它可以正确旋转。任何帮助将不胜感激
【问题讨论】:
标签: ios objective-c iphone cgaffinetransform