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
?
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Keishin Yokomaku
February 18, 2015
Technology
2
520
?
Keishin Yokomaku
February 18, 2015
Tweet
Share
More Decks by Keishin Yokomaku
See All by Keishin Yokomaku
Base64 in Android
keithyokoma
0
37
One screen, many BottomSheets
keithyokoma
0
430
LazyColumnのitemがViewPortの中で占める領域の割合を知りたい
keithyokoma
0
710
Build apps for Cars
keithyokoma
0
560
Save the state
keithyokoma
0
590
Either in Kotlin
keithyokoma
0
620
持続的なアプリ開発のためのDXを支える技術
keithyokoma
2
5.4k
Make the objects serializable with kotlinx.serialization
keithyokoma
0
5.3k
Kotlin で書く Gradle Custom Tasks
keithyokoma
0
570
Other Decks in Technology
See All in Technology
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
160
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
460
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
230
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
180
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
360
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
560
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
180
Agile Leadership Summit Keynote 2026
m_seki
1
590
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
150
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
680
Featured
See All Featured
The Curse of the Amulet
leimatthew05
1
8.4k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
220
Information Architects: The Missing Link in Design Systems
soysaucechin
0
770
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
76
The SEO identity crisis: Don't let AI make you average
varn
0
240
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
200
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
The Language of Interfaces
destraynor
162
26k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
Mind Mapping
helmedeiros
PRO
0
81
Transcript
? @KeithYokoma - Drivemode, Inc. potatotips #14
KeithYokoma Keishin Yokomaku Drivemode, Inc. Android Engineer GitHub: https://github.com/KeithYokoma Qiita:
http://qiita.com/KeithYokoma e-Book: http://amzn.to/1mZNydv
?
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?android:attr/listPreferredItemHeight”> <!—— content ——> </RelativeLayout>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?android:attr/listPreferredItemHeight”> <!—— content ——> </RelativeLayout>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?android:attr/listPreferredItemHeight”> <!—— content ——> </RelativeLayout>
?
Referencing style attributes Allows us to reference the value of
the attribute in the currently-applied theme. Format: ?[<package_name>:][<resource_type>/]<resource_name>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?android:attr/listPreferredItemHeight”> <!—— content ——> </RelativeLayout> <resources>
<style name=“MyTheme” parent=“Theme.Light”> <item name=“android:listPreferredItemHeight”>64dp</item> </style> </resources>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?android:attr/listPreferredItemHeight”> <!—— content ——> </RelativeLayout> <resources>
<style name=“MyTheme” parent=“Theme.Light”> <item name=“android:listPreferredItemHeight”>64dp</item> </style> </resources>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“64dp”> <!—— content ——> </RelativeLayout> <resources>
<style name=“MyTheme” parent=“Theme.Light”> <item name=“android:listPreferredItemHeight”>64dp</item> </style> </resources>
Your own “?”
<resources> <attr name=“my_custom_attribute” format=“reference”/> </resources>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?attr/my_custom_attribute”> <!—— content ——> </RelativeLayout>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?attr/my_custom_attribute”> <!—— content ——> </RelativeLayout> <resources>
<style name=“MyTheme” parent=“Theme.Light”> <item name=“my_custom_attribute”>64dp</item> </style> </resources>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“?attr/my_custom_attribute”> <!—— content ——> </RelativeLayout> <resources>
<style name=“MyTheme” parent=“Theme.Light”> <item name=“my_custom_attribute”>64dp</item> </style> </resources>
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android" android:layout_width=“match_parent” android:layout_height=“wrap_content” android:minHeight=“64dp”> <!—— content ——> </RelativeLayout> <resources>
<style name=“MyTheme” parent=“Theme.Light”> <item name=“my_custom_attribute”>64dp</item> </style> </resources>
Abstract Theme Using style attributes reference. ✓ Reduce costs to
change styles ✓ Reusable styling
themes_holo.xml <resources> <style name=“Theme.Holo”> <—— … ——> <item name="colorPrimary">@color/holo_primary</item> <item
name=“colorEdgeEffect”>?attr/colorPrimary</item> <—— … ——> </style> </resources>
themes_holo.xml <resources> <style name=“Theme.Holo.Light” parent=“Theme.Light”> <—— … ——> <item name="colorPrimary">@color/holo_light_primary</item>
<—— … ——> </style> </resources>
themes_holo.xml <resources> <style name=“Theme.Holo.Light” parent=“Theme.Light”> <—— … ——> <item name="colorPrimary">@color/holo_light_primary</item>
<—— … ——> </style> <style name=“Theme.Holo.Light.DarkActionBar"> </style> </resources>
–Ryan Brush “Code is design”
? @KeithYokoma - Drivemode, Inc. potatotips #14