Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Navigation Component
Search
satsukies
May 22, 2018
Technology
5
3.6k
Navigation Component
Presented at CA.apk #6 (2018.05.22)
satsukies
May 22, 2018
Tweet
Share
More Decks by satsukies
See All by satsukies
5分で作るモックサーバー
satsukies
0
580
Android スキルセットをフル活用して始めるスマートテレビアプリ開発
satsukies
1
620
Android TVに関するアップデート / What's new on Android TV
satsukies
0
190
Kotlin Nativeでクロスプラットフォーム開発 / Cross-platform development with Kotlin Native
satsukies
1
790
「OK google, プロジェクトのbuildして」
satsukies
2
1.4k
いまさら始めるInstant App
satsukies
1
360
View Animation
satsukies
1
720
Other Decks in Technology
See All in Technology
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
240
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
5
380
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
150
20分で完全に理解するGrafanaダッシュボード
hamadakoji
3
560
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
非同期推論システムによるコスト削減と信頼性向上
koki_nishihara
0
250
VS CodeでAWSを操作しよう
smt7174
8
1.6k
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
480
Databricks における 『MLOps』
databricksjapan
2
170
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
350
APIファーストなプロダクトマネジメントの実践 〜SaaSus Platformでの例〜 / "Practicing API-First Product Management - An Example with SaaSus Platform
oztick139
0
100
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.8k
Featured
See All Featured
The Language of Interfaces
destraynor
151
23k
A better future with KSS
kneath
231
16k
How to name files
jennybc
65
93k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
355
18k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
241
1.2M
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
In The Pink: A Labor of Love
frogandcode
138
21k
Documentation Writing (for coders)
carmenintech
60
3.9k
The Brand Is Dead. Long Live the Brand.
mthomps
49
28k
Transcript
/BWJHBUJPO$PNQPOFOU !TBUVTLJFT $"BQL(PPHMF*0ใࠂձ
8IPJTʁ !TBUTVLJFT ͖ͭ͞ w "CFNB57Ͱ"OESPJE։ൃͬͯ·͢ w εϚϗ1$ͦͷଞిࢠػثͷΦλΫ w ΏΔΩϟϯ˚͍͍ͧ
"OESPJE+FUQBDL w ૉૣ͘ɺ؆୯ʹΞϓϦΛ։ൃ͢ΔͨΊͷπʔϧϥΠϒϥϦ܈ͷ૯শ w lVOCVOEMFEzͳঢ়ଶͰఏڙ ɹʹඞཁͳͷΛɺ͖ͳλΠϛϯάͰ࠾༻Ͱ͖Δ
5PEBZ`TUPQJD /BWJHBUJPO
5-%3 w "OESPJE+FUQBDLͷ̍ػೳͱͯ͠/BWJHBUJPO͕৽͘͠ఏڙ w /BWJHBUJPOը໘ભҠͷ࣮Λ؆୯͔ͭૉૣ͘Ͱ͖ΔΑ͏ʹͳΔ w /BWJHBUJPOͷΨΠυϥΠϯͱͯͭ͠ͷݪଇ͕ڍ͛ΒΕ͍ͯΔ w ࠓޙɺ୯ҰΞΫςΟϏςΟͳߏʹ͍͖ͯ͘͠ͳͷ͔
8IBU`TUIF/BWJHBUJPO w J04ΞϓϦ։ൃͰͷ4UPSZCPBSEͷҰ෦Έ͍ͨͳΠϝʔδ w ը໘ભҠʹؔ͢Δ෦͚͕ͩ༗ޮʹͳͬͯΔΑ͏ͳײ͡ʁ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ w 4BGF"SHVNFOUTʹΑΔܕ҆શͳҾͷαϙʔτ w ࢹ֮తͳπʔϧ͕༻ҙ w
্هͷఆٛΛ(6*Ͱײతʹ࣮ߦ w ఆ͕ٛࢹ֮Խ͞ΕΔͷͰɺҰͰը໘ؒͷભҠ͕ؔ֬ೝՄೳʹ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ <navigation xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" app:startDestination="@+id/launcher_home"> <fragment android:id="@+id/launcher_home"
android:name="com.example.android.codelabs.navigation.MainFragment" android:label="@string/home" tools:layout="@layout/main_fragment" /> <activity android:id="@+id/main_activity" android:name="com.example.android.codelabs.navigation.MainActivity" android:label="MainActivity" /> </navigation>
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ <action android:id="@+id/next_action" app:destination="@+id/flow_step_one" app:enterAnim="@anim/slide_in_right" app:exitAnim="@anim/slide_out_left"
app:popEnterAnim="@anim/slide_in_left" app:popExitAnim="@anim/slide_out_right" /> <deepLink app:uri="www.example.com/{myarg}" />
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU 'SBHNFOU ىಈ ΞʔςΟετ
બ ΞϧόϜબ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU 'SBHNFOU
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU 'SBHNFOU ىಈ ΞʔςΟετ
બ ΞϧόϜબ %FFQ-JOLىಈ IUUQIPHFDPNBSUJTUYYYZZZ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU 'SBHNFOU IUUQIPHFDPNBSUJTUYYYZZZ όοΫελοΫʹը໘͕
ੵ·Εͨঢ়ଶʹͳΒͳ͍ʂ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU IUUQIPHFDPNBSUJTUYYYZZZ IUUQIPHFDPN
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU IUUQIPHFDPNBSUJTUYYYZZZ IUUQIPHFDPNBSUJTUYYY
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU 'SBHNFOU IUUQIPHFDPNBSUJTUYYYZZZ TUBSU"DUJWJUJFT
'SBHNFOU5SBOTBDUJPO
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ 'SBHNFOU 'SBHNFOU 'SBHNFOU IUUQIPHFDPNBSUJTUYYYZZZ TUBSU"DUJWJUJFT
'SBHNFOU5SBOTBDUJPO /BWJHBUJPOΛͬͯ ը໘ભҠΛߏங͢Ε ಉͷ͜ͱ͕؆୯ʹ࣮ݱՄೳ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w 4BGF"SHVNFOUTʹΑΔܕ҆શͳҾͷαϙʔτ w 'SBHNFOUʹॳظΛ͍ͨ࣌͠ɺ#VOEMFΛྑ͘͏ val args =
Bundle() args.putInt("artistId", 123456) val artistId = arguments?.getInt("artistId") ֨ೲ࣌ͱผͷܕͰΞΫηε͠Α͏ͱ͢Δ͜ͱՄೳ ʹܕ҆શ͡Όͳ͍
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w 4BGF"SHVNFOUTʹΑΔܕ҆શͳҾͷαϙʔτ <fragment android:id="@+id/flow_step_one" android:name="com.example.android.codelabs.navigation.FlowStepFragment" tools:layout="@layout/flow_step_one_fragment" >
<argument android:name="artistId" android:defaultValue="hoge" app:type=“string" /> </fragment>
public class FlowStepFragmentArgs { private String artistId = "hoge"; private
FlowStepFragmentArgs() { } public static FlowStepFragmentArgs fromBundle(Bundle bundle) { FlowStepFragmentArgs result = new FlowStepFragmentArgs(); if (bundle.containsKey("artistId")) { result.artistId = bundle.getString("artistId"); } return result; } public String getArtistId() { return artistId; } public Bundle toBundle() { Bundle __outBundle = new Bundle(); __outBundle.putString("artistId", this.artistId); return __outBundle; } ...
public static class Builder { private String artistId = "hoge";
public Builder(FlowStepFragmentArgs original) { this.artistId = original.artistId; } public Builder() {} public FlowStepFragmentArgs build() { FlowStepFragmentArgs result = new FlowStepFragmentArgs(); result.artistId = this.artistId; return result; } public Builder setArtistId(String artistId) { this.artistId = artistId; return this; } public String getArtistId() { return artistId; } }
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w 4BGF"SHVNFOUTʹΑΔܕ҆શͳҾͷαϙʔτ FlowStepFragmentArgs.Builder() .setArtistId("123456") .build() .toBundle() val
artistId = arguments?.let { val safeArgs = FlowStepFragmentArgs.fromBundle(it) safeArgs.artistId } UZQFTBGFʹҾܦ༝ͰΓͱΓ͕Մೳ
8IBU`TUIF/BWJHBUJPO w ࢹ֮తͳπʔϧ͕༻ҙ
8IBU`TUIF/BWJHBUJPO w ࢹ֮తͳπʔϧ͕༻ҙ w ఆٛΛ(6*Ͱײతʹ࣮ߦ
None
8IBU`TUIF/BWJHBUJPO w ࢹ֮తͳπʔϧ͕༻ҙ w ্هͷఆٛΛ(6*Ͱײతʹ࣮ߦ w ఆ͕ٛࢹ֮Խ͞ΕΔͷͰɺҰͰը໘ؒͷભҠ͕ؔ֬ೝՄೳʹ
8IBU`TUIF/BWJHBUJPO w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w "DUJWJUZ'SBHNFOUؒͷભҠɺ%FFQ-JOLʹΑΔը໘ͷىಈ w 4BGF"SHVNFOUTʹΑΔܕ҆શͳҾͷαϙʔτ w ࢹ֮తͳπʔϧ͕༻ҙ w
্هͷఆٛΛ(6*Ͱײతʹ࣮ߦ w ఆ͕ٛࢹ֮Խ͞ΕΔͷͰɺҰͰը໘ؒͷભҠ͕ؔ֬ೝՄೳʹ
1SJODJQMFPG/BWJHBUJPO /BWJHBUJPOͷհϖʔδʹɺҎԼͷΑ͏ͳΨΠυϥΠϯ͕ࣔ͞Εͯ·͢ w 5IFBQQTIPVMEIBWFBpYFETUBSUJOHEFTUJOBUJPO w "TUBDLJTVTFEUPSFQSFTFOUUIFlOBWJHBUJPOTUBUFzPGBOBQQ w 5IF6QCVUUPOOFWFSFYJUTZPVSBQQ w 6QBOE#BDLBSFFRVJWBMFOUXJUIJOZPVSBQQ`TUBTL
w %FFQMJOLJOHUPBEFTUJOBUJPOPSOBWJHBUJOHUPUIFTBNFEFTUJOBUJPO TIPVMEZJFMEUIFTBNFTUBDL
1SJODJQMFPG/BWJHBUJPO 5IFBQQTIPVMEIBWFBpYFETUBSUJOHEFTUJOBUJPO w ΞϓϦΛىಈͨ࣌͠ɺಉ͡։࢝ઌʹ౸ୡ͖͢ w ॳճىಈ࣌ͷઃఆը໘ɺϩάΠϯը໘ͳͲ͜Εʹͯ·Βͳ͍ w Ϣʔβ͕ɺΞϓϦΛىಈޙʹͲͷը໘ʹ౸ୡ͢Δͷ͔༧ଌͰ͖Δ w ͜ͷը໘͕ɺΞϓϦͰͷϗʔϜը໘ͷΑ͏ͳׂΛ࣋ͭ
w #BDLɺ6QͳͲͰϥϯνϟʔΔࡍɺ࠷ޙʹදࣔ͞ΕΔը໘ͷͣ
1SJODJQMFPG/BWJHBUJPO "TUBDLJTVTFEUPSFQSFTFOU ɹɹɹɹɹɹɹɹɹɹUIFlOBWJHBUJPOTUBUFzPGBOBQQ w TUBDLΞϓϦͷzφϏήʔγϣϯঢ়ଶzΛࣔͨ͢ΊʹΘΕΔ w TUBDL'*-0 -*'0 ͷߏ w
Ұ൪Լʹελʔτը໘͕͋Γɺࠓ͍Δը໘Ұ൪্ʹ͋Δͣ w ը໘ͷભҠઌ಄ͷ1VTI͔ɺઌ಄ͷ1PQͰදݱ͞ΕΔ
1SJODJQMFPG/BWJHBUJPO 5IF6QCVUUPOOFWFSFYJUTZPVSBQQ w 6QϘλϯઈରʹΞϓϦΛऴྃ͠ͳ͍ w Ϣʔβ͕ελʔτը໘ʹ͍Δ߹ɺ ɹɹɹɹɹɹɹ6QϘλϯදࣔ͞Εͳ͍
1SJODJQMFPG/BWJHBUJPO 5IF6QCVUUPOOFWFSFYJUTZPVSBQQ w 6QϘλϯઈରʹΞϓϦΛऴྃ͠ͳ͍ w Ϣʔβ͕ελʔτը໘ʹ͍Δ߹ɺ ɹɹɹɹɹɹɹ6QϘλϯදࣔ͞Εͳ͍ w %FFQMJOLͰΞϓϦΛىಈͨ͠߹ɺ 6QϘλϯΞϓϦͷը໘ʹΔ͜ͱΛҙຯ
1SJODJQMFPG/BWJHBUJPO 6QBOE#BDLBSFFRVJWBMFOUXJUIJOZPVSBQQ`TUBTL w 6QϘλϯͱ#BDLΩʔΞϓϦͷUBTLͰಉ͡
6QϘλϯ #BDLΩʔ ಉͷૢ࡞ʹͳΔ
1SJODJQMFPG/BWJHBUJPO 6QBOE#BDLBSFFRVJWBMFOUXJUIJOZPVSBQQ`TUBTL w 6QϘλϯͱ#BDLΩʔΞϓϦͷUBTLͰಉ͡ w ελʔτը໘ʹ͍Δ߹ɺ6QϘλϯӅ͞Εɺ#BDLΩʔͰΞϓϦ͕ऴྃ ԡԼͰΞϓϦऴྃ 6QϘλϯ͕ඇදࣔʹ
1SJODJQMFPG/BWJHBUJPO %FFQMJOLJOHUPBEFTUJOBUJPOPSOBWJHBUJOH UPUIFTBNFEFTUJOBUJPOTIPVMEZJFMEUIFTBNFTUBDL w ౸ୡઌ͕ಉ͡ͳΒɺ%FFQMJOLʹΑΔભҠͱΞϓϦͰͷભҠ ಉ͡TUBDL͕ੜ͞ΕΔ w ҙͷը໘ʹͲͷΑ͏ʹ౸ୡ͔ͨ͠ʹؔΘΒͣɺ#BDLΩʔ͘͠6QϘ λϯΛͬͯελʔτը໘·ͰΕΔ w
%FFQMJOLͰͷભҠ࣌ɺطଘͷTUBDLഁغ͞Εɺ%FFQMJOLʹΑͬͯੜ ͞ΕͨTUBDLʹஔ͖ΘΔ
1SJODJQMFPG/BWJHBUJPO /BWJHBUJPOͷհϖʔδʹɺҎԼͷΑ͏ͳΨΠυϥΠϯ͕ࣔ͞Εͯ·͢ w 5IFBQQTIPVMEIBWFBpYFETUBSUJOHEFTUJOBUJPO w "TUBDLJTVTFEUPSFQSFTFOUUIFlOBWJHBUJPOTUBUFzPGBOBQQ w 5IF6QCVUUPOOFWFSFYJUTZPVSBQQ w 6QBOE#BDLBSFFRVJWBMFOUXJUIJOZPVSBQQ`TUBTL
w %FFQMJOLJOHUPBEFTUJOBUJPOPSOBWJHBUJOHUPUIFTBNFEFTUJOBUJPO TIPVMEZJFMEUIFTBNFTUBDL
4UBSUUP/BWJHBUJPO w ͭͷϥΠϒϥϦͱͭͷ(SBEMFQMVHJOͰߏʢBMQIB࣌ʣ
4UBSUUP/BWJHBUJPO w ͭͷϥΠϒϥϦͱͭͷ(SBEMFQMVHJOͰߏʢBMQIB࣌ʣ w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPODPNNPO w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOSVOUJNF উखʹJNQPSU͞ΕΔ
4UBSUUP/BWJHBUJPO w ͭͷϥΠϒϥϦͱͭͷ(SBEMFQMVHJOͰߏʢBMQIB࣌ʣ w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPODPNNPO w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOSVOUJNF w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOGSBHNFOU w
BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOVJ /BWJHBUJPO ಋೖ͢ΔͳΒඞਢ
4UBSUUP/BWJHBUJPO w ͭͷϥΠϒϥϦͱͭͷ(SBEMFQMVHJOͰߏʢBMQIB࣌ʣ w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPODPNNPO w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOSVOUJNF w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOGSBHNFOU w
BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOVJ w BOESPJEBSDIOBWJHBUJPOOBWJHBUJPOTBGFBSHTHSBEMFQMVHJO ͜Ε୯ମͰ ͑Δ͔
4UBSUUP/BWJHBUJPO w ϞδϡʔϧͷCVJMEHSBEMFʹҎԼΛՃ w w 4BGFBSHVNFOUTΛ͏߹ɺϓϩδΣΫτͷCVJMEHSBEMFʹҎԼΛՃ implementation 'android.arch.navigation:navigation-fragment:1.0.0-alpha01'
implementation 'android.arch.navigation:navigation-ui:1.0.0-alpha01' dependencies { classpath 'android.arch.navigation:navigation-safe-args- gradle-plugin:1.0.0-alpha01' }
4UBSUUP/BWJHBUJPO w φϏήʔγϣϯάϥϑΛϦιʔεͱͯ͠Ճ͢Δ w SFTσΟϨΫτϦͰOFX"OESPJE3FTPVSDF'JMF w 3FTPVSDF5ZQF/BWJHBUJPOΛબ
4UBSUUP/BWJHBUJPO w φϏήʔγϣϯάϥϑΛϦιʔεͱͯ͠Ճ͢Δ w ৽ن࡞͢Δͱɺ͜Μͳײ͡ͰۭͷYNMϦιʔε͕ੜ͞ΕΔ
4UBSUUP/BWJHBUJPO w ભҠରͱͳΔը໘ΛϦιʔεՃ͢Δ
4UBSUUP/BWJHBUJPO w ભҠରͱͳΔը໘ΛϦιʔεՃ͢Δ w UPPMTMBZPVUͰϨΠΞτ*%Λࢦఆ͢Δͱ ɹɹɹɹɹɹϓϨϏϡʔΛ(6*্Ͱඳըͯ͘͠ΕΔ
4UBSUUP/BWJHBUJPO w ը໘ಉ࢜ͷભҠʢ"DUJPOʣΛՃ
4UBSUUP/BWJHBUJPO w ը໘ಉ࢜ͷભҠʢ"DUJPOʣΛՃ BQQEFTUJOBUJPOʹɺભҠઌը໘ͷ/BWJHBUJPOάϥϑͰͷ*%͕ೖΔ
4UBSUUP/BWJHBUJPO w 'SBHNFOUʹ͢Ҿͷఆٛ w ΤσΟλʔӈଆͷ"UUSJCVUFTϖΠϯ͔ΒՃՄೳ ҎԼͷཁૉΛࢦఆ͢Δ wOBNF wUZQF wEFGBVMUWBMVF
4UBSUUP/BWJHBUJPO w 'SBHNFOUʹ͢Ҿͷఆٛ w ΤσΟλʔӈଆͷ"UUSJCVUFTϖΠϯ͔ΒՃՄೳ
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w /BW)PTU'SBHNFOUΛϨΠΞτʹՃ w Ҏޙɺ༻ҙͨ͠ྖҬʹભҠઌͷGSBHNFOU͕දࣔ͞ΕΔ
None
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w /BW)PTU'SBHNFOUΛϨΠΞτʹՃ w Ҏޙɺ༻ҙͨ͠ྖҬʹભҠઌͷGSBHNFOU͕දࣔ͞ΕΔ
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w /BW)PTU'SBHNFOUΛϨΠΞτʹՃ w OBWJHBUJPOϦιʔεͱ/BW)PTU'SBHNFOUΛؔ࿈͚͍ͮͯ͠Δ
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w /BW)PTU'SBHNFOUΛϨΠΞτʹՃ w 4ZTUFN͔Βͷ#BDLΩʔΠϕϯτΛरͬͯ͘ΕΔΑ͏ʹͳΔ
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w /BW)PTU'SBHNFOUΛϨΠΞτʹՃ w "DUJWJUZͰҎԼΛՃ͢Δ͜ͱͰɺ#BDLΩʔʹΑΔ֊ͷભҠΛ࣮ݱ
None
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w /BWJHBUJPO6*TFUVQ8JUI/BW$POUSPMMFS ͰNFOVपΓΛηοτΞοϓ
None
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w .FOVͱಉ͡Α͏ʹ/BWJHBUJPO6*ͷϝιουͰηοτΞοϓ w /BWJHBUJPO6*TFU6Q"DUJPO#BS8JUI/BW$POUSPMMFS
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w NFOVϦιʔεͷ֤JUFNͷ*%ɺOBWJHBUJPOϦιʔεͰͷભҠઌը໘ʹ ͍͍ͭͯΔ*%Λࢦఆ͢Δ w *%ҰகͰɺભҠઌ͕ϝχϡʔʹࣗಈͰCJOE͞ΕΔ
4UBSUUP/BWJHBUJPO w "DUJWJUZΛमਖ਼ͯ͠φϏήʔγϣϯΛ༗ޮԽ͢Δ w NFOVϦιʔεͷ֤JUFNͷ*%ɺOBWJHBUJPOϦιʔεͰͷભҠઌը໘ʹ ͍͍ͭͯΔ*%Λࢦఆ͢Δ w *%ҰகͰɺભҠઌ͕ϝχϡʔʹࣗಈͰCJOE͞ΕΔ
4UBSUUP/BWJHBUJPO w ը໘ભҠΛखಈͰߦ͍͍ͨ߹ɺ/BWJHBUJPO$POUSPMMFSOBWJHBUF w /BWJHBUJPOpOE/BW$POUSPMMFS WJFX ͰίϯτϩʔϥΛऔಘ w OBWJHBUF
Ͱɺ/BWJHBUJPOϦιʔεͰఆٛͨ͠BDUJPOͷ*%ΛҾʹ͢
None
"QQFOEJY"EEBOJNBUJPO w ը໘ભҠʹΞχϝʔγϣϯΛ͚͍ͭͨ w ΤσΟλ͔Β؆୯ʹΞχϝʔγϣϯΛࢦఆՄೳ w "DUJPOΛબͨ͠ঢ়ଶͰɺӈଆͷ"UUSJCVUFϖΠϯͰม͑ΒΕΔ
"QQFOEJY4BGF"SHVNFOU w OBWJHBUJPOTBGFBSHTHSBEMFQMVHJO͚ͩ׆༻ͯ͠ΈΔ w 5ZQFTBGFͳ'SBHNFOUͷҾͷड͚͠Λ࣮ݱ w /BWJHBUJPOάϥϑͰ"SHVNFOUT͚ͩઃఆͯ͠ɺ"SHTΫϥεΛੜ w ࣗಈੜ͞ΕͨΫϥεͷ#VJMEFSΛͬͯ#VOEMFʹΛอଘಡग़
8IBU`TUIF/BWJHBUJPOʢ࠶ܝʣ w ը໘ભҠΛ9.-ϕʔεͷϦιʔεͱͯ͠ఆٛ w 4BGF"SHVNFOUTʹΑΔܕ҆શͳҾͷαϙʔτ FlowStepFragmentArgs.Builder() .setArtistId("123456") .build() .toBundle() val
artistId = arguments?.let { val safeArgs = FlowStepFragmentArgs.fromBundle(it) safeArgs.artistId } UZQFTBGFʹҾܦ༝ͰΓͱΓ͕Մೳ
·ͱΊ w "OESPJE+FUQBDLͷ̍ػೳͱͯ͠/BWJHBUJPO͕৽͘͠ఏڙ w +FUQBDLͷ֤ػೳݸผʹఏڙ͞Ε͍ͯΔͷͰɺదٓ࠾༻Ͱ͖Δ w /BWJHBUJPOը໘ભҠͷ࣮Λ؆୯͔ͭૉૣ͘Ͱ͖ΔΑ͏ʹͳΔ w 9.-ϕʔεͷϦιʔεͰɺײతͳ(6*ΤσΟλʔ͕༻ҙ͞Ε͍ͯΔ w
/BWJHBUJPOͷΨΠυϥΠϯͱͯͭ͠ͷݪଇ͕ڍ͛ΒΕ͍ͯΔ w ࠓޙɺ୯ҰΞΫςΟϏςΟͳߏʹ͍͖ͯ͘͠ͳͷ͔
5IBOLZPV !TBUTVLJFT