簡體   English   中英

如何在動畫結束時移動到另一個片段

[英]how move to another fragment on animation end

1-在MainActivity的onCreate方法中,我們使用以下命令加載SplashFragment:

loadFragment(new SplashFragment(), this);

2-然后在SplashFragment的onViewCreated方法中,我們有一個動畫。 我們希望在動畫結束后使用以下命令移至RegisterFragment:

    @Override
    public void onAnimationEnd(Animation animation) {
        loadFragment(new RegisterFragment(), getActivity());
    }

1,作品

2不起作用!

為什么?! 我們該如何解決呢?

注意:我們的loadFragment方法放置在適配器類中:

 public static void loadFragment(Fragment fragment, Context context) {
        FragmentTransaction transaction = ((FragmentActivity)context).getSupportFragmentManager().beginTransaction();
        transaction.replace(R.id.frame_container, fragment);
        transaction.addToBackStack(null);
        transaction.commit();
    }

您可以嘗試在UI線程上運行它,因為這可能是線程問題。

    @Override
    public void onAnimationEnd(Animation animation) {
        getActivity().runOnUiThread(new Runnable() {
               @Override
               public void run() {
                   loadFragment(new RegisterFragment(), getActivity());
               }
        });
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM