0

uiview 内に uilabel (およびその他のラベル) があります。ラベルがタップされたときに iaction を実行するジェスチャーを追加しました。

アクションはトリガーされませんが、ラベルを uiview の外側に配置すると (uiview の子ではないことを意味します)、正常に動作します。アクションのトリガーを停止するよりも、ビュー内に戻しました。

理由はありますか?

ラベルが uiview 内にあると、ジェスチャーに反応しなくなり、その理由がわかりません (uiview とラベルの両方で「ユーザー操作が有効になっているにもかかわらず」)。

ティア

4

3 に答える 3

0

どうやら親コントロールに問題があったようです。ビューを再描画したところ、正常に機能しました。コメントしてくれてありがとう。

于 2012-05-30T14:20:45.677 に答える
0

UILabelここでの問題は、 UIView ではなく touch イベントを受け取っていることだと思います。viewDidLoadメソッドに次のコードを追加してみてください (もちろん、ラベルに合わせて変更されています) 。

myLabel.userInteractionEnabled = FALSE;

これにより、タッチ イベントが UIView に渡されるようになります。なぜあなたはこれをやっている?で作業する方が簡単ではないUIButtonでしょうか?

于 2012-05-24T16:54:46.987 に答える
0

または、UILabel がなく、ボタンのテキストのみが表示されるようにすると、(メモリの観点から) UILabel と UIButton を使用する必要がなくなります。

于 2012-05-24T16:17:25.553 に答える