我正在使用一个简单的幻灯片,当我执行FragmentTransaction时向右滑动自定义动画。我的问题是,我用事务动画加载的片段包含onResume()中的代码,以进行HTTP调用,这会导致我的“Please Wait”进度对话框显示。它可以工作,但是我希望将我的代码从onResume移动到Fragment中的另一个方法,在片段完全加载之前不会触发。换句话说,当动画完成并完全滑入到位时。
我用它来启动新片段
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.setCustomAnimation(R.anim.slide_in_right, R.anim.slide_out_left);
ft.replace(R.id.realtabcontent, new MyFragment());
ft.commit();
我希望MyNewFragment()中的方法在动画完成100%后初始化
这可能吗?
答案 0 :(得分:0)
这里有两种方法,
在幻灯片动画中实现AnimationListener。
animation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
在侦听器的onAnimationEnd()中,调用片段中的方法进行HTTP调用。