0
Q
如何創建此動畫?
A
回答
0
這裏的答案:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViewFlipper flipper = findViewById(R.id.flipper);
flipper.setOnTouchListener(this);
}
private void myOnTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
mDragged = true;
break;
case MotionEvent.ACTION_DOWN:
mDragged = false;
mXbefore = event.getX();
break;
case MotionEvent.ACTION_UP:
if(mDragged){
vf = (ViewFlipper) v;
mXafter = event.getX();
if(mXafter > mXbefore){
vf.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.right_to_left_in));
vf.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.right_to_left_out));
vf.showNext();
}else{
vf.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.left_to_right_in));
vf.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.left_to_right_out));
vf.showPrevious();
}
}
mDragged = false;
break;
default:
break;
}
}
的main.xml:
<ViewFLipper id="@+id/flipper">
<YourLayout />
<YourLayout />
</ViewFlipper>
right_to_left_in.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="-100%p"
android:toXDelta="0%p"
android:duration="500"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="500" />
</set>
鑽機ht_to_left_out.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="100%p"
android:toXDelta="200%p"
android:duration="500"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="500" />
</set>
left_to_right_in.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="100%p"
android:toXDelta="0"
android:duration="500"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="500" />
</set>
left_to_right_out_xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0%p"
android:toXDelta="-100%p"
android:duration="500"/>
<alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="500" />
</set>
1
的2個方法是真的有用到quikly解決這一問題:
Animation slide_out_left = AnimationUtils.makeOutAnimation(getActivity(),false);
Animation slide_in_right = AnimationUtils.makeInAnimation(getActivity(), true);
Animation slide_out_right = AnimationUtils.makeOutAnimation(getActivity(),true);
Animation slide_in_left = AnimationUtils.makeInAnimation(getActivity(), false);
here是方法的文檔,因爲您會看到第二個參數是選擇邊的標誌。
結果與Rodrigo之前寫過的相似,但需要2行代碼,並且不需要自定義動畫的定義。
相關問題
- 1. 如何爲此路徑創建動畫?
- 2. 如何創建此搜索框動畫?
- 3. 如何創建動畫ToggleButton?
- 4. 如何使用CSS或Jquery創建此動畫?
- 5. 如何重新創建此效果/過渡/動畫? (HTML/CSS/JQuery)
- 6. 如何創建動畫的運動IMG
- 7. 如何動態創建'@ -Keyframe'CSS動畫?
- 8. 如何爲UIView創建拖動動畫?
- 9. 如何修剪此動畫
- 10. 如何停止此動畫?
- 11. 如何製作此動畫?
- 12. 如何重複此動畫?
- 13. 如何創建此動態表單?
- 14. Android:如何動態創建此佈局?
- 15. 如何動態創建此表單
- 16. Android:如何創建2D動畫
- 17. 如何創建動畫方面編程
- 18. 如何用動畫創建雪碧?
- 19. 如何創建加載動畫
- 20. Javascript:如何創建一個CSS3動畫
- 21. 如何爲API函數創建動畫?
- 22. 如何在QtGui中創建動畫?
- 23. 如何創建動畫信用頁面?
- 24. 如何爲UITableViewCell創建bacgroundColor動畫?
- 25. 如何創建動畫閃屏等這
- 26. 如何從動畫創建視頻
- 27. 如何創建android cocos2dx啓動畫面?
- 28. 如何爲svg路徑創建動畫?
- 29. 如何在hide/show上創建動畫?
- 30. 如何創建java gui動畫?