Phi*_*hil 5 android android-animation android-fragments
当我执行 FragmentTransaction 时,我使用简单的向左滑动、向右滑动自定义动画。我的问题是,我使用事务动画加载的片段包含 onResume() 中的代码,用于进行 HTTP 调用,这会导致显示“请稍候”进度对话框。它有效,但我希望将我的代码从 onResume 移动到片段中的另一个方法,该方法在片段完全加载之前不会触发。换句话说,当动画完成并且完全滑入到位时。
我用它来启动新片段
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();
Run Code Online (Sandbox Code Playgroud)
我希望 MyNewFragment() 中的方法在动画 100% 完成后初始化
那可能吗?
这里有两种可能的方法,
在滑入动画上实现一个 AnimationListener。
animation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
Run Code Online (Sandbox Code Playgroud)在监听器的 onAnimationEnd() 中,调用片段中的方法来进行 HTTP 调用。
| 归档时间: |
|
| 查看次数: |
3579 次 |
| 最近记录: |