6

実装UIButtonしていますが、UIControlEventTouchUpInsideイベントは発生しますが、発生しませんUIControlEventTouchDown

UIButton *btnClose = [UIButton buttonWithType:UIButtonTypeCustom];
NSString *filePathImage = @"img.png";
NSString *filePathImageTap = @"img-tap.png";
UIImage *buttonImage = [UIImage imageWithContentsOfFile:filePathImage];
UIImage *buttonImageTap = [UIImage imageWithContentsOfFile:filePathImageTap];
[btnClose setImage:buttonImage forState:UIControlStateNormal];
[btnClose setImage:buttonImageTap forState:UIControlStateSelected];
[btnClose setImage:buttonImageTap forState:UIControlStateHighlighted];      
[btnClose addTarget:self action:@selector(close:) forControlEvents:UIControlEventTouchUpInside];    
[self.view addSubview:btnClose];
4

1 に答える 1

3

なぜそれがかからないのか、私は仮定を持っていますUIControlEventTouchUpInside

2 つの異なる ViewControllers に 2 つの "BannerView" (広告) がありました。1 つは正常に機能し、もう 1 つはどのようUIButtonに触れられ、2 番目の画像 (暗い) が表示されるかを確認しました。しかし、セレクターはヒットしませんでした。すると、Up-Event が aUISwipeGestureRecognizerから aに吸収されていることに気付きましたUIImageView。いくつかRecognizerは互いに競合します。これらが魔女のものであることを確認するために概要を検索しましたが、何も見つかりませんでした.

別の解決策: ButtonState が変更されないことがわかった場合は、Button に View があるかどうかを確認する必要があります。

于 2012-09-05T07:51:23.917 に答える