skip to Main Content

Here is my Lottie animation code:

public class Splash extends AppCompatActivity {

ImageView logo,splashImg;
LottieAnimationView lottieAnimationView;
TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_splash);

    logo = findViewById(R.id.logo);
    splashImg = findViewById(R.id.img);
    textView = findViewById(R.id.Motto);
    lottieAnimationView = findViewById(R.id.lottie);

    splashImg.animate().translationY(-2800).setDuration(1000).setStartDelay(4000);
    logo.animate().translationY(1850).setDuration(1000).setStartDelay(4000);
    textView.animate().translationY(1800).setDuration(1000).setStartDelay(4000);
    lottieAnimationView.animate().translationY(1800).setDuration(1000).setStartDelay(4000);



}

}

And Now I want to go to another Activity, How do I do it??

2

Answers


  1. You can use the Handler class for this purpose and then navigate to your second or new Activity subclass by using Intent like so. In short this code will navigate to the other activity by waiting for 2000 milliseconds or 2 seconds which can be customised. Maybe you can add set it according to when your animation is done by selecting the duration of largest among all

    new Handler().postDelayed(new Runnable(){
       @Override
       private void run(){
         Intent intent = new Intent(Splash.this, YourNewActivity.class)
         startActivity(intent)
       }
    
    }, 2000)
    

    Another clean approach would to be add an AnimationListener and as soon as the animation completes just fire an Intent to start the other Activity

    You can find how to use AnimationListener specially for Lottie here

    Login or Signup to reply.
  2. Please check this code:

    mAddedToCartAnimation.addAnimatorListener(new Animator.AnimatorListener() {
        @Override
        public void onAnimationStart(Animator animation) {
            Log.e("Animation:","start");
        }
    
        @Override
        public void onAnimationEnd(Animator animation) {
                    startActivity(new Intent(this,NewActivity.class));
    
            //Your code for remove the fragment
            try {
                getActivity().getSupportFragmentManager()
                      .beginTransaction().remove(this).commit();
            } catch(Exception ex) {
                ex.toString();
            }
        }
    
        @Override
        public void onAnimationCancel(Animator animation) {
            Log.e("Animation:","cancel");
        }
    
        @Override
        public void onAnimationRepeat(Animator animation) {
            Log.e("Animation:","repeat");
        }
    });
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search