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
layout xml? try Anko!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Moyuru Aizawa
December 09, 2016
Programming
2
2.7k
layout xml? try Anko!
Shibuya.apk
Ankoについての発表
TwitterID変えました。@lvla0805 -> @MoyuruAizawa
Moyuru Aizawa
December 09, 2016
Tweet
Share
More Decks by Moyuru Aizawa
See All by Moyuru Aizawa
BLUETOOTH_SCAN and iBeacon
lvla
1
140
graphicsLayer
lvla
0
260
BluetoothDevice.getName()に裏切られた話
lvla
0
390
Jetpack Composeで画像クロップ機能を実装する
lvla
0
1.2k
Jetpack Compose drag gesture and pinch gesture
lvla
1
4.2k
Jetpack Compose Layout API
lvla
1
700
BLEを使ったアプリを継続的に開発するために
lvla
0
1.1k
RecyclerView.ItemAnimator
lvla
1
350
RecycledViewPool
lvla
1
260
Other Decks in Programming
See All in Programming
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
130
「抽象に依存せよ」が分からなかった新卒1年目の私が Goのインターフェースと和解するまで
kurogenki
0
100
CSC307 Lecture 14
javiergs
PRO
0
470
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
370
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
380
SourceGeneratorのマーカー属性問題について
htkym
0
180
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
190
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
500
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
170
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
190
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
120
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.2k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
310
Paper Plane
katiecoart
PRO
0
48k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.4k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
480
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
630
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
140
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
130
Tell your own story through comics
letsgokoyo
1
840
Transcript
MBZPVUYNM !MWMB
MWMB MWMB Ѫᖒ๖ .PZVSV"J[BXB -FBEFOHJOFFSPGQBJST%JWFVSFLB *OD
QBJST $PVQMFT NBUDIHSPVQ *"$ IJSJOH
‣ *UJTOPUUZQFTBGF ‣ *UJTOPUOVMMTBGF ‣ *UGPSDFTZPVUPXSJUFBMNPTUUIFTBNFDPEFGPSFWFSZMBZPVU ZPVNBLF ‣ 9.-JTQBSTFEPOEFWJDFXBTUJOH$16UJNFBOECBUUFSZ ‣
.PTUPGBMM JUBMMPXTOPDPEFSFVTF 6*XSJUUFOVTJOH9.-
JU`TIBSEMZEPOFCFDBVTFJU`TTPNFXIBUVHMZBOEIBSEUPNBJOUBJO 8IJMFZPVDBODSFBUF6*QSPHSBNNBUJDBMMZʜ val act = this val layout = LinearLayout(act)
layout.orientation = LinearLayout.VERTICAL val name = EditText(act) val button = Button(act) button.text = "Say Hello" button.setOnClickListener { Toast.makeText(act, "Hello, ${name.text}!", Toast.LENGTH_SHORT) .show() } layout.addView(name) layout.addView(button)
"OLPNBLFTUIFTBNFMPHJDFBTZUPSFBE FBTZUPXSJUF verticalLayout { val name = editText() button("Say Hello")
{ onClick { toast("Hello, ${name.text}!") } } }
)PXJUXPSLT
"OLPDPOTJTUTPGTPNF,PUMJOFYUFOTJPOGVODUJPOBOEQSPQFSUJFT 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?, init:
Button.()->Unit): Button
&YUFOTJPOGVODUJPOPG"DUJWJUZ 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?, init:
Button.()->Unit): Button
&YUFOTJPOGVODUJPOPG@-JOFBS-BZPVU TVCDMBTTPG-JOFBS-BZPVU 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?,
init: Button.()->Unit): Button
&YUFOTJPOGVODUJPOPG7JFX.BOBHFS JOUFSGBDFUIBU7JFX(SPVQJNQMFNFOUT 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?,
init: Button.()->Unit): Button
&YUFOTJPOGVODUJPOPG#VUUPO 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?, init:
Button.()->Unit): Button
5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?, init: Button.()->Unit):
Button verticalLayout { val name = editText() button("Say Hello") { onClick { toast("Hello, ${name.text}!") } } }
5IFUIJTLFZXPSEDPSSFTQPOETUP@-JOFBS-BZPVU 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?, init:
Button.()->Unit): Button verticalLayout { val name = editText() button("Say Hello") { onClick { toast("Hello, ${name.text}!") } } }
5IFUIJTLFZXPSEDPSSFTQPOETUP#VUUPO 5IFSFJTOP fun Activity.verticalLayout(init: _LinearLayout.()->Unit): LinearLayout fun ViewManager.button(text: CharSequence?, init:
Button.()->Unit): Button verticalLayout { val name = editText() button("Say Hello") { onClick { toast("Hello, ${name.text}!") } } }
*TJUFYUFOTJCMF
JGZPVXBOUUPVTFB.BQ7JFXJOUIF%4- XSJUFUIJTJOBOZ,PUMJOpMF *TJUFYUFOTJCMF public inline fun ViewManager.mapView(theme: Int =
0, init: MapView.()->Unit) = ankoView({ MapView(it) }, theme, init)
5SZ"OLP IUUQTHJUIVCDPN,PUMJOBOLP
5IBOLZPV