0

目的のビュー コントローラーにリンクしていないカメラ ビューの上にオーバーレイ UIView として表示される情報ボタンがあります。触れても何も起こりません。

ボタンを作成してリンクするコードは次のとおりです

    // Create a Button to get Help
    infoButton =  [UIButton buttonWithType:UIButtonTypeInfoLight ] ;
    CGRect buttonRect = infoButton.frame;

    // Calculate the bottom right corner
    buttonRect.origin.x = 455;
    buttonRect.origin.y = 297;
    [infoButton setFrame:buttonRect];

    [infoButton addTarget:self action:@selector(presentInfo) forControlEvents:UIControlEventTouchUpInside];
    [view addSubview:infoButton];

セグエを作成するコードは次のとおりです

- (void) presentInfo
{
InfoViewController *ivc = [self.storyboard instantiateViewControllerWithIdentifier:@"InfoViewController"];
[self presentModalViewController:ivc animated:YES];
}
4

1 に答える 1

1

最初にこれを試してください: - ブレークポイントを設定します:

- (void) presentInfo
{
InfoViewController *ivc = [self.storyboard instantiateViewControllerWithIdentifier:@"InfoViewController"];
[self presentModalViewController:ivc animated:YES];
}

プログラムがこの時点に到達した場合、セグエに問題があるはずです。

今週もボタンに問題がありました。私の場合、ボタンの上に別の UIView があったため、セレクターにヒットしません。または、試して変更することもできます:

[infoButton addTarget:self action:@selector(presentInfo) forControlEvents:UIControlEventTouchUpInside];

の:

[infoButton addTarget:self action:@selector(presentInfo) forControlEvents:UIControlEventTouchDown];

また、代替画像でボタンがタッチに反応するかどうかも確認してください。

これが役立つことを願っています

ああ、またはあなたが作成した UITapGestureRecognizer を試してみてください。しかし、これは本当に絶望的な解決策のためだけです。

于 2012-09-04T15:10:23.897 に答える