1.まずは遷移先の Activity
を新規に作成します。
2.次に AndroidManifest
に遷移先の Activity
を追加します。なお、遷移元の Activity
は既に追加されているものとします。
application
タグの中に、新しく activity
タグを追加し、android:name
で遷移先の Activity
を指定します。
<activity android:name=".DetailsActivity" android:label="@string/app_name" > </activity>
2.最後に Fragment
から Activity
への遷移処理を記述すれば完了です。
startActivity(Intent(context, DetailsActivity::class.java))
また、Activity
の遷移アニメーションを変更したい場合は下記のように、Activity
の overridePendingTransition
メソッドを使用することで任意のアニメーションで、Activity
の遷移を実現することができます。第一引数には遷移先の enter アニメーションを、第二引数には遷移下の exit アニメーションをそれぞれ指定します。
startActivity(Intent(context, DetailsActivity::class.java))
activity?.overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out)
これらのアニメーションをカスタムしたい場合は、res/anim
ディレクトリにカスタムアニメーションのリソースファイルを作成します。下記は右から左
へと遷移するカスタムアニメーションの例になります。
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300" /> </set>
参考
- https://codeforfun.jp/android-studio-activity-animation/
- https://akira-watson.com/android/kotlin/activity-trans.html
- https://shoheohtani.blogspot.com/2019/02/android-transition-animation.html