2012-01-14 8 views
2

の不透明部分にbegan`触れ、私はUIImageviewを使用していると私は不規則な形状UIImageView画素完璧は、iPhoneアプリの開発UIImage

// uiimageview type shutter 
shutter = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,320,32.5)]; 

//setting image on shutter 
UIImage* shutterimg = [UIImage imageNamed:@"trayshutter.png"]; 
[shutter setImage:shutterimg]; 
// User interaction 
shutter.userInteractionEnabled=YES; 

の画像を設定していると私はtouchesbegan

を使用してタッチを得ます

すべて問題はありませんが、イメージビューのCGRectMake(つまり0,0,320,32.5)が占めるすべての矩形領域でイベントが発生しますが、 --- ||||| -----)。

どのように私はイメージ上でのみイベントを取得し、cgrectmakeによってカバーされる残りの領域ではないことを確認できますか?

答えて

0
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    UITouch *touch = [touches anyObject]; 
    if ([touch view] == yourDesiredImage) { 
    // Do something here 
    } 
} 

EDIT:多分あなたの代わりにUITapGestureRecognizerを試すことができます。

UITapGestureRecognizer * tapGestureRecognizer = [[UITapGestureRecognizer alloc] init]; 
[tapGestureRecognizer addTarget:self action:@selector(yourTouchMethod:)]; 
[tapGestureRecognizer setNumberOfTapsRequired:1]; 
[shutter addGestureRecognizer:tapGestureRecognizer]; 
[tapGestureRecognizer release]; 
+0

を、私は同じことを試してみましたが、また、ImageViewのオブジェクトに[タッチビュー]をチェックしてみましたが、問題は同じまま。 – RDX

+0

実際に私はこの画像ビューと画像を持っているクラスopencloseshutterを作っていますので、画像ビューと画像をチェックしてチェックしなくても何の助けを借りずに試してみました.. – RDX

+0

@RDX 'UITapGestureRecognizer'を使ってみましたか? – Kjuly

関連する問題