私の中で
-(void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration;
メソッドでは、アプリがデバイスとともに回転するときに、スクロールビューの位置を変更してサイズを変更するコードがあります。私は次のコードでそれを行います:
-(void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{
[super willRotateToInterfaceOrientation:toInterfaceOrientation duration:0.5f];
if (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight){
//landscape
[mT.buttonScroll setFrame:CGRectMake(0, 544, 1024, 160)];
}else if (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft){
//landscape
[mT.buttonScroll setFrame:CGRectMake(0, 544, 1024, 160)];
}else if (toInterfaceOrientation == UIInterfaceOrientationPortrait){
//portrait
[mT.buttonScroll setFrame:CGRectMake(0, 800, 768, 160)];
}else if (toInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown){
//portrait
[mT.buttonScroll setFrame:CGRectMake(0, 800, 768, 160)];
}
}
すべてが適切に回転しますが、もう一度回転すると、スクロールビューが完全に手に負えなくなります。スクロールしたり、ボタンをタッチしたりすることはできません。次に、前のビューに戻ると、タッチが戻ります。なぜそれがこれをしているのか誰かが知っていますか?