Desde a API 16, você pode fornecer um pacote de opções de atividade ao chamar Context.startActivity (Intent, Bundle) ou métodos relacionados. Ele é criado por meio do construtor ActivityOptions :
Intent myIntent = new Intent(context, MyActivity.class);
ActivityOptions options =
ActivityOptions.makeCustomAnimation(context, R.anim.fade_in, R.anim.fade_out);
context.startActivity(myIntent, options.toBundle());
Não se esqueça de verificar os outros métodos do construtor ActivityOptions e ActivityOptionsCompat se você estiver usando a Biblioteca de Suporte.
API 5+:
Para aplicativos destinados ao nível de API 5+, existe o overridePendingTransition
método Activities . São necessários dois IDs de recursos para as animações de entrada e saída. Um id de 0
desativará as animações. Ligue imediatamente após a startActivity
ligação.
ie:
startActivity(new Intent(this, MyActivity.class));
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
API 3+:
Você pode evitar a animação padrão (deslize da direita) com a Intent.FLAG_ACTIVITY_NO_ANIMATION
bandeira em seu intent.
ie:
Intent myIntent = new Intent(context, MyActivity.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
context.startActivity(myIntent);
então, em sua Atividade, você simplesmente precisa especificar sua própria animação.
Isso também funciona para a API 1.5 (Nível 3).