回答
你使用的是什麼Android版本?由於API級別11,您可以使用自定義Animators,這可以輕鬆實現您的曲線翻譯。
如果使用低於一個版本有AFAIK僅使用翻譯動畫和設置動畫聽衆
EDIT手動連接多個線性平移的可能性:
實施例:
View view;
animator = ValueAnimator.ofFloat(0, 1); // values from 0 to 1
animator.setDuration(5000); // 5 seconds duration from 0 to 1
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener()
{
@Override
public void onAnimationUpdate(ValueAnimator animation) {
float value = ((Float) (animation.getAnimatedValue()))
.floatValue();
// Set translation of your view here. Position can be calculated
// out of value. This code should move the view in a half circle.
view.setTranslationX((float)(200.0 * Math.sin(value*Math.PI)));
view.setTranslationY((float)(200.0 * Math.cos(value*Math.PI)));
}
});
我希望它能起作用。剛剛複製&粘貼(並縮短和更改)我的應用程序的代碼。
請考慮以下網頁鏈接。這是一個用C語言編寫的遊戲。你需要隔離projectile()函數,並試着理解在其中定義的變量。一旦你嘗試在自己的代碼中實現它。
雖然這可能在理論上回答這個問題,但您最好(http://meta.stackexchange.com/q/8259)爲您編輯答案以包含解決方案的基本部分,並提供供參考的鏈接。 –
下面是我用的是動畫師:
目的:將沿路徑 「路徑」
的Android V21 +查看 「查看」:
// Animates view changing x, y along path co-ordinates
ValueAnimator pathAnimator = ObjectAnimator.ofFloat(view, "x", "y", path)
的Android V11 +:
// Animates a float value from 0 to 1
ValueAnimator pathAnimator = ValueAnimator.ofFloat(0.0f, 1.0f);
// This listener onAnimationUpdate will be called during every step in the animation
// Gets called every millisecond in my observation
pathAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
float[] point = new float[2];
@Override
public void onAnimationUpdate(ValueAnimator animation) {
// Gets the animated float fraction
float val = animation.getAnimatedFraction();
// Gets the point at the fractional path length
PathMeasure pathMeasure = new PathMeasure(path, true);
pathMeasure.getPosTan(pathMeasure.getLength() * val, point, null);
// Sets view location to the above point
view.setX(point[0]);
view.setY(point[1]);
}
});
花更多的時間解釋你的答案是如何工作是很有幫助的,所以提問者可以更容易地遵循你的代碼。 – SuperBiasedMan
@SuperBiasedMan感謝您的反饋!在評論中添加了解釋。 –
我不得不這樣做:'pathMeasure.getLength()/ 2',因爲視圖一直回到它原來的位置。 – Rick
- 1. Android翻譯動畫
- 2. android:如何動畫翻譯一層LayerDrawable
- 3. 翻譯動畫
- 4. 如何製作連續翻轉動畫?
- 5. Android動畫。兩個翻譯活動
- 6. SVG動畫翻譯
- 7. Android如何爲listfragment製作動畫setSelection()?
- 8. 在Android代碼中的動畫翻譯
- 9. flickering在Android中翻譯動畫
- 10. Android翻譯動畫導致Clicklistener問題
- 11. 在Android中翻譯動畫問題
- 12. android frame-by-frame動畫和翻譯
- 13. Android的翻譯動畫進度回調
- 14. 如何在畫布上製作生長線動畫android
- 15. 集動畫曲線
- 16. 製作翻頁動畫(如雜誌)
- 17. 翻譯CSS動畫WPF動畫
- 18. 將動畫後備翻譯爲位置
- 19. ImageView scale +翻譯動畫
- 20. 翻譯動畫無效
- 21. 翻譯動畫代碼
- 22. 縮放和翻譯動畫
- 23. 在Firefox中翻譯動畫
- 24. Nativescript無限翻譯動畫
- 25. UIVIew動畫 - 縮放+翻譯
- 26. 翻譯和縮放動畫
- 27. 如何製作動畫的SVG虛線
- 28. 如何添加旋轉動畫來翻譯動畫?
- 29. 翻譯捲曲cfx_http5
- 30. Android:翻譯動畫第一次工作,而不是第二次
請提供一些示例代碼,用於在android 3.0中準備曲線翻譯。 – user884126
你在那裏。我希望它的作品 –
@ js-先生,我可以實現一個彎曲的動畫api水平低於11使用九老android庫? –