我有一種觀點,我希望能夠「輕彈」走(如在應用程序果凍,Potluck和Weotta中看到的)。我把這個視圖掛在了平移手勢識別器上。問題是它不會「輕彈」(即,如果我從屏幕底部輕彈它,它應該從屏幕的頂部移開,而不必將其一直拖到屏幕的頂部)。我假設這將以某種方式使用UIKitDynamics完成,但我不確定如何實現它。有任何想法嗎?謝謝。彈開視圖
Q
彈開視圖
-2
A
回答
1
有幾種方法可以做到這一點。最簡單的可能只是動畫這樣的觀點:
[UIView beginAnimations:@"flick" context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
[UIView setAnimationDuration:0.5];
[UIView setAnimationDelegate:self];
yourView.frame = CGRectMake(yourView.frame.origin.x, -yourView.frame.size.height, yourView.frame.size.width, yourView.frame.size.height);
[UIView commitAnimations];
這只是爲您設置的動畫背景,那麼你改變你觀點的起源上面的屏幕上方某處。剩下的就是蘋果。您可以嘗試不同的動畫曲線和持續時間,以查看最佳效果。請查看Apple's docs瞭解您可以爲動畫曲線提供的值。
+0
這段代碼是否會在平底鍋手勢? – user3186310
+0
是的 - 當您對手勢做出迴應時,只需觸發動畫即可完成。你可以嘗試使用touchesBegan/touchesMoved/touchesEnded來讓視圖上下移動,並且只有在向上輕彈時才能輕彈,但這至少可以讓你開始。 –
相關問題
- 1. 彈出到根視圖在開卷SEGUE
- 2. 從滑動視圖打開彈出框
- 3. 如何在PinView中打開UIButton打開彈出式視圖?
- 4. 彈出子視圖
- 5. iPad彈窗視圖
- 6. 開始視頻的div彈出 - 加載彈出的視頻
- 7. 在視圖的前景中打開視圖作爲彈出窗口
- 8. UINavigationContlrol沒有彈出視圖
- 9. Android彈跳選項視圖?
- 10. 彈出列表視圖
- 11. 表視圖不反彈
- 12. 彈出加載視圖?
- 13. 在Swift中彈出視圖
- 14. 彈簧視圖安全
- 15. Android:ActivityGroup - 如何「彈出」視圖
- 16. 關閉彈窗視圖
- 17. 彈出視圖的表
- 18. PopViewController不會彈出視圖
- 19. 表視圖不彈出
- 20. iPhone視圖彈出動畫?
- 21. 打開視圖
- 22. 在解析(SWIFT)上保存數據時打開彈出視圖
- 23. 角引導日曆月視圖打開彈出問題
- 24. 無法在模型彈出窗口中打開視圖mvc 3
- 25. 如何打開視圖控制器時,彈出是開放的 - 迅速3
- 26. 彈出式視圖選擇圖像
- 27. intellij中彈簧xml的圖形視圖
- 28. 通過點擊彈出視圖按鈕從彈出視圖按鈕
- 29. 彈出基本視圖。它會彈出它的所有子視圖嗎?
- 30. 經典視圖/移動視圖開關?
你到目前爲止嘗試過什麼? (除了添加手勢識別器)我們需要查看您的代碼或僞代碼,以便我們知道在哪裏提供幫助。 – random
@random我剛剛完成了平移手勢,並根據其位置 – user3186310
來設置視圖的框架,以便進行正確的輕彈檢測,您最好還是編寫自己的手勢識別器。 /developer.apple.com/library/ios/documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/GestureRecognizer_basics/GestureRecognizer_basics.html#//apple_ref/doc/uid/TP40009541-CH2-SW44 .. – lukya