2010-10-13 74 views
3

我有一個應用程序,其中包含一個運動圖像,我想使用我的自定義動畫爲圖像設置動畫。如何將IBAction事件與圖像關聯?

如何將IBAction事件與圖像關聯?

如何檢測用戶觸摸圖像的屏幕座標?

請給出您的建議。

在此先感謝和您的建議是最受歡迎的。

+0

「我如何將IBAction事件與圖像關聯?」 - >不能理解你能解釋更多你需要的東西。 – Warrior 2010-10-13 10:00:24

+0

我們有一個彈跳球應用程序,在用戶觸摸時,我們想要改變球的方向,而球是圖像。所以我想,如果我觸摸圖像,它應該改變它的方向,因此我想要一個IBAction事件來關聯它。我是一名新手,請幫助我。 – 2010-10-13 10:35:46

回答

1

你也可以做這樣:

首先定義矩形,你的圖像將是:UIGestureRecognizer也UIImageViews的工作

touchRect=CGRectMake(screen.width/2-screen.width/8, 0, screen.width/4, screen.height/5); 

然後使用touchesEnded方法,您可以定義在觸摸該區域時要執行的操作:

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { 

     CGPoint targetPoint = [[touches anyObject] locationInView:self]; 
     if (CGRectContainsPoint(touchRect, targetPoint)){ 
      //YOUR CODE HERE 
     } 
} 
+0

touchRect = CGRectMake(screen.width/2-screen.width/8,0,screen.width/4,screen.height/5); 這是什麼框架?我對此不是很清楚。請解釋,因爲我仍然是一個新手。 – 2010-10-13 10:38:27

+0

如何在IB中將touchesEnded事件與imageview相關聯?在此先感謝 – 2010-10-13 10:44:44

+0

對不起,它只是一個示例GRectMake(x位置,y位置,x大小,y大小)只是創建一個矩形。它就像在任何你想要的位置創建一個看不見的廣場,這樣你就可以檢查屏幕裏面是否有東西。 – JonLOo 2010-10-13 10:44:53

3

你可以在圖片中使用自定義的UIButtons。所有的觸摸處理代碼已經內置。


編輯:

UIImageView *imageView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"foo.png"]] autorelease]; 
imageView.userInteractionEnabled = YES; 
UITapGestureRecognizer *tapGesture = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAction:)] autorelease]; 
[imageView addGestureRecognizer:tapGesture]; 
[self.view addSubview:imageView]; 
+0

我們有一個彈跳球應用程序,用戶觸摸我們想要改變球的方向,球是一個圖像。所以我很困惑,如果我像你說的那樣使用一個按鈕,那麼當球移動時我將如何獲得它。 – 2010-10-13 10:33:38

+0

與移動UIImageView完全相同。兩者都是UIViews,所以應該沒有區別。但說實話,移動物體我不會使用按鈕的方法。那只是感覺不好。請參閱我的編輯int答案。 – 2010-10-13 10:45:42

相關問題