Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Dart
Search
funnelbit
January 30, 2017
Programming
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dart
funnelbit
January 30, 2017
More Decks by funnelbit
See All by funnelbit
Hatena Engineer Seminar #9
funnelbit
5
7.5k
droidkaigi-2017-renovation
funnelbit
10
11k
BottomBarAndSnackBar
funnelbit
0
550
Dagger2 Optional bindings
funnelbit
0
620
WearableRecyclerView
funnelbit
1
860
QucikSettingsTileAPI
funnelbit
0
390
Mobile Vision
funnelbit
0
500
AwarenessAPI
funnelbit
0
170
Asynchronous Injection
funnelbit
1
290
Other Decks in Programming
See All in Programming
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
1
2k
iOSDCのペンライトを自動制御したい!
akkeylab
0
210
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
9.2k
速習iPhone Duo対応
yuukiw00w
2
910
Webの地図
yosuke_furukawa
PRO
6
5k
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.2k
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
320
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
360
The Rails Doctrine Decade
koic
2
420
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
430
setup-vp GitLab対応の裏側
naokihaba
0
140
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
240
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
4
4k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Odyssey Design
rkendrick25
PRO
2
840
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
The Limits of Empathy - UXLibs8
cassininazir
1
690
Design in an AI World
tapps
1
340
Statistics for Hackers
jakevdp
799
230k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
780
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
%BSU
ࣗݾհ ଜྋ גࣜձࣾͯͳ )BUFOBGVOOFMCJU 5XJUUFS!FYQFSPQFSP
%SPJE,BJHJͰൃද͠·͢ w IUUQTESPJELBJHJHJUIVCJP w 3PPNd w IUUQTESPJELBJHJHJUIVCJP UJNFUBCMFIUNM
*OUFOU ͷ ѻ͍Λ ؆୯ʹ͢Δ
4USJOH .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Intent intent
= new Intent(MainActivity.this, Main2Activity.class); intent.putExtra(Main2Activity.EXTRA_TEXT, "ok"); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … public static
final String EXTRA_TEXT = “text"; … Bundle extras = getIntent().getExtras(); Log.e("extra_text", extras.getString(EXTRA_TEXT)); … }
4USJOH PS /VMM .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { public static final
String EXTRA_TEXT = "text"; … Bundle extras = getIntent().getExtras(); if (extras != null) { Log.e(“extra_text", extras.getString(EXTRA_TEXT, "defaultValue")); } … }
w ૿͑Δఆ w ૿͑ΔJGจ w ૿͢ϨϏϡʔίετ
%BSU %BSUBOE)FOTPO
%BSU %BSUBOE)FOTPO w #VUUFS,OJGFΈͨ͘&YUSBͷΛ*OKFDU͢Δ w ίϯύΠϧ࣌ʹ*OKFDU͢ΔίʔυΛੜ
4USJOH .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Intent intent
= new Intent(MainActivity.this, Main2Activity.class); intent.putExtra(Main2Activity.EXTRA_TEXT, “ok"); … Intent intent = Henson.with(MainActivity.this) .gotoMain2Activity() .text("ok") .build(); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … @InjectExtra String
text; public static final String EXTRA_TEXT = "text"; … Dart.inject(this); Log.e("extra_text", text); … }
0QUJPOBM*OKFDUJPO
4USJOH PS /VMM .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Intent intent
= new Intent(MainActivity.this, Main2Activity.class); intent.putExtra(Main2Activity.EXTRA_TEXT, “ok"); … Intent intent = Henson.with(MainActivity.this) .gotoMain2Activity() .text("ok") .build(); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … @Nullable @InjectExtra
String text; public static final String EXTRA_TEXT = "text"; … Dart.inject(this); if (!TextUtils.isEmpty(text)) { Log.e("extra_text", text); … Bundle extras = getIntent().getExtras(); if (extras != null) { Log.e(“extra_text", extras.getString(EXTRA_TEXT, "defaultValue")); } }
%FGBVMU7BMVFT
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … @Nullable @InjectExtra
String text = "default"; … }
'SBHNFOU
%BSUJOKFDU 'SBHNFOU public class BlankFragment extends Fragment { @InjectExtra String
param1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Dart.inject(this);
%BSUJOKFDU BOESPJEBQQ'SBHNFOU
%BSUJOKFDU 0CKFDU #VOEMF
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … Bundle extras
= Henson.with(this) .gotoBlankFragment() .param1(“??????”) .build() .getExtras(); blankFragment = new BlankFragment(); blankFragment.setArguments(extras); getSupportFragmentManager() .beginTransaction() .replace(R.id.fragment_container, blankFragment, TAG_FRAGMENT) .commit(); … }
#MBOL'SBHNFOU public class BlankFragment extends Fragment { @InjectExtra String param1;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Dart.inject(this, getArguments()); Log.e("param1", param1); } } w ͪΐͬͱେม
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Bundle
fragmentExtras = Henson.with(MainActivity.this) .gotoBlankFragment() .param1("!!!!!!!!!") .build() .getExtras(); Intent intent = Henson.with(MainActivity.this) .gotoMain2Activity() .text("a") .build(); intent.putExtras(fragmentExtras); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … Fragment blankFragment
= getSupportFragmentManager().findFragmentByTag(TAG_FRAGMENT); if (blankFragment == null) { getSupportFragmentManager() .beginTransaction() .replace(R.id.fragment_container, new BlankFragment(), TAG_FRAGMENT) .commit(); } … }
#MBOL'SBHNFOU public class BlankFragment extends Fragment { @InjectExtra String param1;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.e("param1", param1); } @Override public void onAttach(Context context) { super.onAttach(context); Dart.inject(this, getActivity()); } } w ͍ͩͿେม
·ͱΊ w ίʔυྔͷ૿ՃΛ͑Δ͜ͱ͕ग़དྷΔ w Մಡੑ্ w ϨϏϡʔ͍͢͠ w 'SBHNFOUͰ͏ʹͪΐͬͱบ͕͋Δ
ࢀߟ w IUUQTHJUIVCDPNGQSBUFFLEBSU
͋Γ͕ͱ͏͍͟͝·ͨ͠