はじめに
今回は画面遷移の部分を作成していきます。前回の記事はこちらから
画面を遷移させる
画面を遷移させる前に
- 前回までMainActivityファイルに登録画面、ListActivityに初期画面を作成してきましたが、
登録画面のActivity名がMainなのは少しおかしいので、
MainActivity.kt → SubmitActivity.kt
activity_main.xml → activity_submit.xml
にリファクタリングしています.
遷移部分を作っていく
- 画面を遷移させるには遷移させるボタンがあるxmlファイルに対応する名前のkotlinファイルを編集していきます.今回の場合は、activity_list.xmlファイル内にある「+」ボタンを押すとactivity_submit.xmlへ遷移する予定なので、ListActivity.ktのファイルを編集していきます.コメントで記述している通り、createBtnの部分はxmlファイルで「+」ボタンに
登録したidになります.
ListActivity.kt
class ListActivity : AppCompatActivity() {
private lateinit var binding: ActivityListBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityListBinding.inflate(layoutInflater)
setContentView(binding.root)
//createBtnは押下予定のボタンid
binding.createBtn.setOnClickListener {
val intent = Intent(application, SubmitActivity::class.java)
startActivity(intent)
}
}
}
- また、登録画面から「一覧へ」のボタンを押下して最初の画面へ戻る想定なので、そちらも追加していきます.
submitActivity.kt
class SubmitActivity : AppCompatActivity() {
private lateinit var binding: ActivitySubmitBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivitySubmitBinding.inflate(layoutInflater)
setContentView(binding.root)
//listBtnは押下予定のボタンid
binding.listBtn.setOnClickListener {
finish()
}
}
}
- 最初に遷移する際に 「startActivity」で画面をスタートしているので戻る際は「finish()」でスタートした画面を終了させます.これで最初の画面から遷移させて戻ってくるとこまでできました.
おわりに
- 今回は画面遷移に関して記事にしました.前回の最後でDBの準備もやりたいみたいなことを言っていましたが、複数の話題を取り扱うと記事内容が散らかる気がしたのでここで区切ります.近いうちにDB関連のみを扱ったものを投稿するので次回もお楽しみに!
参考資料まとめ
- 画面遷移関連の資料