を持つシングルビューアプリに取り組んでいUITapGestureRecognizer
ます。iPad で試してみると、タップが認識されないことに気付きました。1x/2x ボタンでアプリをズームした後、タップが機能し始めました。私は何を間違っていますか?
これを非常に小さなサンプルに絞り込みました。XCodeの「Single View Application」から始めました。以下は次のとおりですviewDidLoad
。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
info = [[UILabel alloc] initWithFrame:CGRectMake(100, 100, 200, 20)];
[self.view addSubview:info];
tapper = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
[self.view addGestureRecognizer:tapper];
}
これが私がこれまでに知っていることです:
- iPhone サイズの画面で動作します。
- 縦向きの iPad で動作します。
- 横向きの iPad では、ビューが 1x/2x でズームされるまで失敗し、その後動作を開始します (元のズームレベルにズームバックした後も動作を続けます)。
- iPad シミュレーターと同じ動作を示します。
完全なコードはGitHub リポジトリにあるので、全体を表示したり試したりすることができます。XCode 4.5.1、iPad Retina、iOS 6.0.1。