gpt4 book ai didi

android - fragment 交易动画完成后执行 Action

转载 作者:IT王子 更新时间:2023-10-28 23:41:08 36 4
gpt4 key购买 nike

我想在动画完成后设置按钮可见性。

这就是所谓的动画:

android.support.v4.app.FragmentTransaction fAnimation = this.getActivity().getSupportFragmentManager().beginTransaction();
fAnimation.setCustomAnimations(android.R.anim.slide_in_left, R.anim.pull_out_to_left);
if (this.isVisible()) {
fAnimation.hide(this);
fAnimation.commit();
}

// code that will be executed when the fragment is gone (after the animation is over)

有没有办法附加一个监听器来知道我的 fragment 何时消失?

最佳答案

@nmw 在他的回答中实现的动画器是在 API 级别 11 中添加的,并且不会与 Android 支持库实现的 fragment 一起使用。

为了监听 Fragment 动画事件,我扩展了支持库的 Fragment 类并覆盖了 onCreateAnimation,将自定义 AnimationListener 附加到返回的 Animation 对象:

public class MyFragment extends android.support.v4.app.Fragment {

private static final String TAG = "MyFragment";

@Override
public Animation onCreateAnimation(int transit, boolean enter, int nextAnim) {

Animation anim = AnimationUtils.loadAnimation(getActivity(), nextAnim);

anim.setAnimationListener(new AnimationListener() {

@Override
public void onAnimationStart(Animation animation) {
Log.d(TAG, "Animation started.");
// additional functionality
}

@Override
public void onAnimationRepeat(Animation animation) {
Log.d(TAG, "Animation repeating.");
// additional functionality
}

@Override
public void onAnimationEnd(Animation animation) {
Log.d(TAG, "Animation ended.");
// additional functionality
}
});

return anim;
}
}

关于android - fragment 交易动画完成后执行 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11120372/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com