2013-06-27 15 views
0

我作出了一個拖碼中,我拖動按鈕,現在的問題是,當我開始拖動它慢慢它的作品很酷,但是當我開始拖它有點快拖動過程中它不工作良好的事業按鈕下降。如何增加按鈕的拖動速度?

我怎麼能增加阻力的速度?

- (void)wasDragged:(UIButton*)button withEvent:(UIEvent*)event{ 
    CGPoint previousLocation; 
    CGPoint location; 
    UITouch *touch = [[event touchesForView:button] anyObject]; 
    previousLocation = [touch previousLocationInView:button]; 
    location = [touch locationInView:button]; 
    CGFloat delta_x = location.x - previousLocation.x; 
    CGFloat delta_y = location.y - previousLocation.y; 
    button.center = CGPointMake(button.center.x + delta_x,button.center.y + delta_y); 
} 
+0

的中心是什麼「拖動過程中左鍵」是什麼意思?你如何安排'wasDragging:withEvent:'被調用?拖動過程中掉落 –

+0

! 我做了一個自定義鍵盤,並在其按鈕上調用了這個選擇器。 [A1 addTarget:自動作:@selector(wasDragged:withEvent:方法)forControlEvents:UIControlEventTouchDragInside]; – Brad

回答

0

只需你可以調整三角洲

CGFloat delta_x = location.x - previousLocation.x; 
CGFloat delta_y = location.y - previousLocation.y; 

delta_x *= 1.5; //the factor of the speed 
delta_y *= 1.5; 

button.center = CGPointMake(button.center.x + delta_x,button.center.y + delta_y); 
+0

謝謝你的工作!但現在有另一個問題,它錯過了按鈕意味着當我開始拖動按鈕變得更快,然後手指。 – Brad

+0

真的不明白你的意思,你想讓你的手指速度與按鈕一樣嗎? – adali

+0

意味着我開始用手指在ipad上拖動按鈕..我以正常速度進行操作,但按鈕從手指向前移動了一步。 – Brad

0

你爲什麼不乾脆設置button.center coordonates爲location.x和location.y?東陽location.x和location.y是在您的手指就是coordonates,並且應該有按鈕