0
我很新的iOS開發。首先讓我解釋我的問題。iphone手勢/事件類似鼠標進入閃存
在Adobe Flash中,有一個鼠標事件使我能夠檢測鼠標進入動畫片段。 因此,例如,假設我有一個主容器影片剪輯,並且裏面有一堆對象。如果我將鼠標拖到這些對象上,它們會 - 例如 - 改變它們的顏色。
在IOS中,我有一個用作容器的主視圖,裏面我填充了幾個UIViews,它們的顏色設置爲某種顏色-blue-。我想要實現的是,當我點擊並開始移動手指時,我想讓手指下的那些改變它們的顏色。 我使用下面的代碼:
for (int i=0;i<8;i++)
{
for(int j=0; j<8; j++)
{
UIPanGestureRecognizer * gesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panGestureCaptured:)];
UIView * test = [[UIView alloc] initWithFrame:CGRectMake(i*34, j*34, 32, 32)];
[test setBackgroundColor:[UIColor blueColor]];
[self.view addSubview:test];
[test addGestureRecognizer:gesture];
}
}
而對於處理程序:
-(void) panGestureCaptured:(UIPanGestureRecognizer*)sender
{
[sender.view setBackgroundColor:[UIColor redColor]];
}
但問題是,只有第一個的顏色變化。 當然,這可能會帶來性能問題:雖然只有一次捕捉和顏色變化就足夠了;當我的手指在正方形內時,處理程序/動作被多次調用。
那麼,任何建議如何處理這種類型的問題?
在此先感謝。
開始在Xcode中輸入「UIControlEvent ...」並查看彈出的所有選項。 – 2012-07-18 20:47:45