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
Design System in Android
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Mahdi Nouri
August 22, 2019
Programming
440
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Design System in Android
Presentation Video on YouTube:
https://youtu.be/NDCiq9rQn5c
Mahdi Nouri
August 22, 2019
Other Decks in Programming
See All in Programming
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
570
GitHubハンズオン講座 — 実務レベルのチーム開発のフローを身につけよう
junhat6
0
110
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.9k
SREの越境 / SRE Collaboration
y0hgi
2
280
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
3.2k
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
170
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
8.6k
Jetpack Compose メカニズム
skydoves
0
480
新卒PdEのリアル
ryu1013
1
520
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
290
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
380
wkhtmltopdfの次どうするか問題2026
willnet
2
1.7k
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
340
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
600
A designer walks into a library…
pauljervisheath
211
25k
HDC tutorial
michielstock
2
910
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
490
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.1k
The agentic SEO stack - context over prompts
schlessera
0
940
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
Transcript
Design System In Android
Who am I? phelat phelat_mahdi
Chapter I What’s a Design System?
What’s a Design System? g
What’s a Design System? g C Component
What’s a Design System? Component g C Component Component Component
Component
Chapter II Benefits of having a Design System
Consistency “Perfectly balanced as all things should be” - Thanos
Productivity “If you spend too much time thinking about a
thing, you'll never get it done.” - Bruce Lee
Common Language “Meow” means “Woof” in cat.” - George Carlin
Material Design Material is an adaptable system of guidelines, components
and tools.
Sonnat: Developer’s Perspective Chapter III
C Divar C Sonnat
colors.xml <color name="brand_primary">#A62626</color> <color name="brand_secondary">#8FA62626</color> <color name="brand_hint">#52A62626</color> <color name=“brand_divider">#1FA62626</color> colors.xml
colors.xml <color name=“error_primary">#FF0000</color> <color name="warning_primary">#E65100</color> <color name=“warning_secondary">#FBC02D</color> <color name="success_secondary">#7CB342</color> <color
name="success_primary">#2E7D32</color> <color name="message_primary">#D7F5FF</color> <color name="message_hint">#3DD7F5FF</color>
fontsizes.xml <dimen name="title_1_font">20sp</dimen> <dimen name="title_2_font">18sp</dimen> <dimen name="regular_font">16sp</dimen> <dimen name="small_font">14sp</dimen> <dimen
name="tiny_font">12sp</dimen>
Sketch Component bar / nav / NavBar Android Package bar
/ nav Component Name NavBar Shape Drawable shape_nav_bar_gradient Selector Drawable - States navigable[true/false], enableGradient[true, false], enableSearch[true, false] Attributes alpha, title, subtitle, actions
NavBar.kt class NavBar : ConstraintLayout, Component, TextWatcher { . .
. }
NavBar.kt private lateinit var gradientBackground: View private lateinit var background:
View private lateinit var navigation: AppCompatImageView private lateinit var actionContainer: LinearLayout private lateinit var title: AppCompatTextView private lateinit var subtitle: AppCompatTextView private lateinit var searchBar: AppCompatEditText private lateinit var clearSearchIcon: AppCompatImageView
NavBar.kt private fun initActionsContainer() { val params = LayoutParams( LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT ).apply { topToTop = LayoutParams.PARENT_ID leftToLeft = LayoutParams.PARENT_ID bottomToBottom = LayoutParams.PARENT_ID } actionContainer = LinearLayout(context).apply { id = ACTION_CONTAINER_ID gravity = Gravity.CENTER_VERTICAL orientation = LinearLayout.HORIZONTAL } addView(actionContainer, params) }
NavBar.kt override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { super.onMeasure(widthMeasureSpec, heightMeasureSpec)
if (measuredHeight != dpToPx(56)) { initLayoutParams() } }
attrs.xml <declare-styleable name="NavBar"> <!-- STATES --> <attr name="navigable" format="boolean" />
<attr name="enableGradient" format="boolean" /> <attr name="animateLayoutChanges" format="boolean" /> <attr name="enableSearch" format="boolean" /> <!-- ATTRIBUTES --> <attr name="title" /> <attr name="subtitle" /> <attr name="alpha" format="float" /> </declare-styleable>
None
None
None
Chapter IV Accessibility
None
activity_main.xml <ImageView android:id="@+id/shareIcon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:contentDescription="@string/string_action_search_label" app:srcCompat="@drawable/ic_search_icon_secondary_24dp" />
InfoRowUnExpandable
None
https:!//contrastratio.github.io
Thank You https:!//jobs.cafebazaar.ir