私は単純なUIButtonを持っていて、ユーザーが触れたときに何かしたいと思っていますが、ボタンの外に指を動かして画面に触れません。だから私はUIControlEventTouchUpOutsideイベントを聞く必要があるようです。私のビューコントローラで奇妙なUIButtonの動作:それは正常ですか?
、私はこれをしなかった:今、何を推測
- (void)onTouchUpOutside {
NSLog(@"touchUpOutside");
}
:
UIButton *bt = [[UIButton alloc] initWithFrame:rect];
[bt setBackgroundColor:[UIColor whiteColor]];
[bt addTarget:self action:@selector(onTouchUpOutside) forControlEvents:UIControlEventTouchUpOutside];
[self.view addSubview:bt];
と、対応するアクションメソッド?私は、ボタンをタッチし、それから外に指をドラッグし、画面を触れないと、メッセージは記録されません。実際には、私の指が本当にボタンの上にあっていなくても、UIControlEventTouchUpInsideイベントが起こったことを私に記録するでしょう。タッチしている間に指の幅を約150%動かすことができ、タッチしている間に指がボタンに入っていることがわかります。しかし、遠くに(遠くに)遠くに移動すると、「touchUpOutside」ログメッセージが表示されます。それで、リンゴからのもう一つの狂気、それは-touchesMovedやそのようなものの遅れですか?それとも私は何か悪いことをしましたか?
これは使いやすさのためです...私はちょうどその領域がとても信じられないほど巨大だと思っています;-) –
人々はあなたが思うよりも太い指を持っています。 –