2012-01-20 8 views
0

IBActionで作成できる複数のimageViewの違いを試してみます。iOs 5 SDK UIGestureRecognizer:複数のimageViewsの違い

はここにアクションのための私のコードです:

-(IBAction) addObject:(id)sender { 

    UIImage * image = [UIImage imageNamed:@"Stuhl.png"]; 
    CGRect rect = CGRectMake(0.0f, 40.0f, image.size.width, image.size.height); 
    Bild *newImageView = [[Bild alloc] initWithFrame:rect]; 
    [newImageView setImage:image]; 
    newImageView.userInteractionEnabled = TRUE; 
    [theView addSubview:newImageView]; 
    [arryData addObject:newImageView]; 

} 

そして私の問題:私はIBActionのaddObject複数回の付いたボタンをクリックしたとき、どのように私は、ImageViewの間で異なることができますか?私が助けを願っています

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer  *)otherGestureRecognizer 
{  

if (gestureRecognizer.view != imageView /*<---Here's my problem*/) 
    return NO; 

if (gestureRecognizer.view != otherGestureRecognizer.view) 
    return NO; 

if ([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]] ||  [otherGestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]]) 
    return NO; 
} 

、 ヴィンセント

答えて

0

気にしないで、あなたは==使用すべきではありませんか!=、私はそれを解決しました私自身は、答えに感謝します。私はちょうど間違った方法を探しました。

-(IBAction) addObject:(id)sender { 

    UIImage * image = [UIImage imageNamed:@"Stuhl.png"]; 
    CGRect rect = CGRectMake(0.0f, 40.0f, image.size.width, image.size.height); 
    Bild *newImageView = [[Bild alloc] initWithFrame:rect]; 
    [newImageView setImage:image]; 
    newImageView.userInteractionEnabled = TRUE; 
    [theView addSubview:newImageView]; 
    /*--->*/[self addGestureRecognizersToPiece:newImageView];/*<---*/ 

} 
0

オブジェクトを比較するために、

使用

if(![gestureRecognizer.view isEqual:imageView]) 
    return NO; 

if (![gestureRecognizer.view isEqual:otherGestureRecognizer.view]) 
    return NO; 
+0

ありがとうございますが、私の問題ではありません、私はジェスチャー認識に使用されるコードは、リンゴのサンプルコードからコピーされます。私の問題は、追加ボタンを複数回タップすると、「imageView」という名前の画像が複数あることです。 gestureRecognizersメソッドでは、imageViewがどのように呼び出され、どのように移動したいのかを伝える必要がありますが、それ以上のものがある場合は、プログラムがimageviewsに別の名前を付ける方法を知らない。 –

+0

タグを設定することができます。例えば、UIImageView * imageView = [[UIImageView alloc] init];次にimageView.tag = 100;その後、gestureRecognizerで、そのビューのタグgestureRecognizer.view.tagを確認して、タグを比較できます。 –

関連する問題