1

円形のボタンを作成するための他の質問をチェックしましたが、うまく機能します-

button.layer.cornerRadius = button.frame.size.height/2;

ただし、元のフレーム全体でボタンが UIControlEventTouchUpInside に応答することがわかりました。円形レイヤー内でのみ UIControlEventTouchUpInside イベントに応答させるにはどうすればよいですか?

ありがとう、シュリダール

4

2 に答える 2

0

あなたの最善の策は を実装する こと-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)eventあり - (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event、タッチするたびにヒットボックスをチェックする必要があるためです。単純に、距離 (center, touchPosition) が buttonRadius より小さいかどうかを確認します。

于 2013-09-28T04:29:08.553 に答える