我有一项活动,我希望在活动中添加Fragment
,然后当我click
按钮Fragment
从底部出现时会显示动画。
答案 0 :(得分:2)
您好,您可以通过这种方式在活动中添加片段,在您onClick()
方法中添加这部分代码:
FragmentTransaction mfragmentTransaction = getFragmentManager().beginTransaction();
//add an animation, you can create your custom animation. Show below
mfragmentTransaction.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_right);
MFragment mFragment = new MFragment();
mfragmentTransaction.replace(R.id.MFragment, mFragment);
mfragmentTransaction.addToBackStack(null).commit();
slide_in_left.xml
<?xml version="1.0" encoding="utf-8"?>
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="100%"
android:toXDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="300"/>
</set>
slide_out_right.xml
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="-100%"
android:toXDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="300"/>
</set>
这是一个从左到右为片段设置动画的示例。您可以使用xml值来根据需要更改动画方向。 ;)
答案 1 :(得分:0)
您可以使用此动画。
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromYDelta="75%p"
android:toYDelta="0%p"
android:fillAfter="true"
android:duration="500" />
</set>
答案 2 :(得分:0)
通过代码翻译
TranslateAnimation anim = new TranslateAnimation(0, 0, 0, 500);
anim.setDuration(200);
balllayout.startAnimation(anim);
balllayout
是动画的布局。