0

ボタンを押すときに、ユーザーがより大きなタッチをする方法が必要です。このようにして、ユーザーはボタンを見逃す可能性がありますが、それでもクリックします。これを行う方法はありますか?ユーザーがクリックする領域だけのボタンクラスを変更したくありません..

ありがとう!!!PS私は論理的思考がかなり得意です...コードが必要なだけです

4

1 に答える 1

1

1) [yourButtonType setBackgroundImage:yourImage forState:UIControlStateNormal] を使用できます。このようなイメージを持たせることができます。

-------------------------------------------
| transparent, transparent, transparent   |
| transparent,yourOpaqueImage, transparent|
| transparent, transparent, transparent   |
|------------------------------------------

実際にはボタン枠が大きくなっていますが、ユーザーは認識できません。

2)このように、touchesEndedを使用できます

- (void)touchesEnded:(UITouch *)touch withEvent:(UIEvent *)event
{
    CGPoint location = [touch locationInView:self];
    CGRect btnRect = CGRectMake(btn.frame.origon.x-10,btn.frame.origon.y-10 , btn.frame.size.width+20, btn.frame.size.height+20);
    if (CGRectContainsPoint(btnRect, location)) {
         //sender your button
    }
}
于 2012-07-29T01:14:45.907 に答える