これは奇妙な問題であり、iOS8 で見られるすべての向きの問題に関連している可能性があります。
私はユニバーサルアプリを持っています。iPad版は横置きのみ、iPhone版は縦置きのみ対応しています。
ユーザーが iPad バージョンを開くと、予期される横向きモードで開きます。ただし、ビューの右側にあるすべてのコントロールは、ユーザーのタッチ イベントに応答しません。影響を受ける領域は 256 幅で、左側の「機能する」領域は 768 幅 (縦幅) です。したがって、アプリが横向きで開いても、アプリは縦向きであると認識します。携帯電話版はポートレートのみをサポートしているため、問題はそこでは明らかになりませんが、問題はデバイス固有ではないと思いますが、問題は iOS8 を実行しているデバイスにのみ影響します.
このアプリは、もともと iOS4 用に開発されたもので、それ以来、何度か反復されています。ただし、元のコードとニブの多くはまだ使用されています。その他の向きの問題が iOS8 で発生しており、関連している可能性があるかどうかはわかりません。
このアプリはもともと iOS4 用に設計されていたため、ストーリーボードは使用されていませんでした。すべてのペン先で「サブビューの自動サイズ変更」がチェックされていることを確認し、アプリの plist に横向きのみが存在することを確認しました (XML で検証)。AppDelegate didFinishLaunchingWithOptions のコード スニペットを次に示します。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
[self.window setFrame:[[UIScreen mainScreen] bounds]];
self.viewController = [[AppMainViewController alloc] initWithNibName:nib bundle:nil];
//...
return YES;
}
画像では、縦長と横長の両方のサイズを示しています。先に述べたように、View Controller はランドスケープでのレンダリングと外観は正常ですが、画像の赤い領域にあるものはユーザーのタップに反応しません。
おそらく、私はこの問題をあまりにも長く見てきたので、誰かがなぜこれが起こっているのかについて何らかの洞察を持っていることを願っています. 誰?ありがとう!