【Android Studio】Activity 画面遷移にアニメーションをつける方法

Sara

今回はアクティビティを開くとき(画面遷移をするとき)にアニメーションをつける方法を紹介します。

紹介するアニメーションは

  • fadeIn, fadeOut(フェードイン、フェードアウト)
  • slideIn, slideOut(スライドイン、スライドアウト)

の2種類です。
 

デモ動画

通常 Activity 間の移動(画面遷移)を行うときは、このように書きます。

startActivity(new Intent(this, MainActivity.class));

今回紹介するアニメーションは、このコードにたった1行追加するだけで利用できます。

簡単なのでぜひ利用してみてください。

解説

ステップ1:プロジェクトの用意

このサンプルでは Activity Animation という名前でプロジェクトを作成して MainActivity.java と activity_main.xml があることを前提に進めていきます。

また遷移先のアクティビティとして SecondActivity.javaactivity_second.xml を作成しています。

ご自身のプロジェクトに合わせて変更してください。

ステップ2:ボタンを用意

まずは画面遷移をするための

  • デフォルト
  • フェード
  • スライド

の3つのボタンを用意します。

activity_main.xml を開いて、以下のようにコードを書きます。

このような画面になります。

18・26・34行目

それぞれのボタンに id を設定しています。

このあと onClickListener を使ってボタンが押された時の処理を書いていくので id を設定しておきます。

ステップ3:クリックリスナーをセット

それぞれのボタンにクリックリスナーをセットします。

MainActivity.java を開いて、7行目の implements View.OnClickListener、15~17・20~23行目を追加します。

15~17行目

クリックリスナーをセットすると、それぞれのボタンが押された時に 21行目の onClick メソッドが呼び出されます。

ステップ4:ボタンが押された時の処理

MainActivity.java の onClick メソッドに3~13行目を追加します。

3行目
startActivity(new Intent(this, SecondActivity.class));

どのボタンを押しても必要になる画面遷移のコードです。

「デフォルト」ボタンを押した時はこのコードだけ実行されます。

6~8行目

「フェードイン・アウト」ボタンが押された時は

overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);

が実行されて、フェードアニメーション付きの画面遷移になります。

10~12行目

「スライドイン・アウト」ボタンが押された時は

overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);

が実行されて、スライドアニメーション付きの画面遷移になります。

ステップ5:アプリを実行

アプリを実行してアニメーションを確認してみましょう。

サンプルコード

Q
activity_main.xml
Q
MainActivity.java
Subscribe
Notify of
0 Comments
古い順
新しい順 人気順
Inline Feedbacks
View all comments
ABOUT ME
Sara
Sara
運営者
書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。
このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。
独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。
主な使用言語:Java / Kotlin / PHP
>> 詳しいプロフィール
>> お問い合わせ
>> 書籍を出版しました!
本格的に学びたい方へ

Code for Fun プログラミング講座

POINT 01

動くコード

プログラミングの文法を学んでも、そこからどのようにアプリ開発ができるのかイメージが湧きにくいものです。

Code for Fun のプログラミング講座では、ゲームやカレンダーなどアプリとして機能するものを作りながらプログラミングを学ぶことができます。

POINT 02

自分のペースで

オンライン講座なので、ご自身のペースで学習を進めて頂けます。

受講期限もないので、いつでも前のレッスンに戻ることができるので安心です。

お申し込みしたその日からすぐに始めることができます。

POINT 03

個別サポート

プログラミング学習では、エラーが起きることはよくあります。そんな時はお気軽にお問い合わせください!

コメント欄またはメールによるサポートを回数無制限でご利用頂けます。(*講座に関連するご質問のみ対応)

今すぐ無料でお試し

0
この記事にコメントするx
記事URLをコピーしました