2013-10-06 22 views
8

UISnapBehavior kullanıyorum, ancak sevdiğim için çok hızlı bir şekilde yakalanıyor. Onu yavaşlatmanın bir yolu var mı? Ya da başka bir deyişle: nesnenin esnekliğini ayarlaması gereken bir nokta var mı?Yavaşlama UISnapBehavior

cevap

14

Görüntüyü UIDynamicItemBehavior'a ekleyerek ve resistance özelliğini ayarlayarak bunu çözebildim.

UIDynamicItemBehavior *dynamicItemBehavior = [[UIDynamicItemBehavior alloc] initWithItems:@[ view ]]; 
dynamicItemBehavior.resistance = 100; 
[animator addBehavior:dynamicItemBehavior]; 
+0

Bunun için bir kod parçacığı gönderebilir miyim? Ben de aynı şeyi yapıyorum ama hızda bir etki görmüyorum ... –

+0

Ah! Nevermind, 0 ile 1 arasında değerler kullanıyordum, 1'in üzerindeki değerler –

+0

ya da @ AlfieHanssen'i kandırıyor, şimdi 50 ve 100 değerleri benim uygulamamda kullanıyorum – drewag

2

Davranışın damping özelliğini bir sayıya> 1.0 olarak ayarlamayı deneyin. Başlık damping'un [0.0, 1.0]'da kalması gerektiğini, ancak 1.0'dan büyük değerlerin iyi çalıştığını söylüyor.

+0

Bu, yalnızca yakalama davranışını, yakalanan öğenin diğer fiziğini etkilemeden etkilemek istiyorsanız, en iyi yol olabilir. Örneğin, öğeye bir hızınız varsa ve direnci yüksek olarak ayarlarsanız, hızın da daha az etkisi olacaktır. Bununla birlikte, ne yazık ki, sönümleme yaparken, şeyler yapışma ile baştan çıkarıcı/çılgınlaşıyor ve bir hatanın olup olmadığını merak ediyorum. –

+0

Teşekkürler, sönümleme 10 ile benim için güzel görünüyor –

İlgili konular