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
Material Components for Android 1.1.0 and 1.2.0
Search
Nabe
November 07, 2019
Programming
1
890
Material Components for Android 1.1.0 and 1.2.0
Nabe
November 07, 2019
Tweet
Share
More Decks by Nabe
See All by Nabe
カクヨムAndroidアプリのリブート
numeroanddev
0
530
GraphicsLayerのBitmap作成
numeroanddev
0
190
GraphQLとGigaViewer for Apps
numeroanddev
4
4.1k
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
700
Material 3で Material 2ぽい見た目にする
numeroanddev
2
610
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
430
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
540
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
930
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
710
Other Decks in Programming
See All in Programming
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
600
CSC509 Lecture 05
javiergs
PRO
0
290
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
370
2025年版 サーバーレス Web アプリケーションの作り方
hayatow
23
25k
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
330
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
670
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
130
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
340
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
メモリ不足との戦い〜大量データを扱うアプリでの実践例〜
kwzr
1
860
Swift Concurrency - 状態監視の罠
objectiveaudio
2
450
Featured
See All Featured
Done Done
chrislema
185
16k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Become a Pro
speakerdeck
PRO
29
5.5k
Code Reviewing Like a Champion
maltzj
525
40k
The Invisible Side of Design
smashingmag
301
51k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Practical Orchestrator
shlominoach
190
11k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Facilitating Awesome Meetings
lara
56
6.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Transcript
.BUFSJBM$PNQPOFOUT GPS"OESPJE BOE "OESPJE%FW4VNNJUใࠂձ ,B[VLJ8BUBOBCF
1SPpMF w ͳ w 5XJUUFS!/BCF$PUU w (JU)VC/6NFSP"OE%FW w ͯͳ w
"OESPJE"QQ%FWFMPQFS
NBUFSJBMDPNQPOFOUTCFUB
CFUB w .BUFSJBM5IFNJOH w $PMPS 4IBQF 5ZQPHSBQIZ5IFNJOH w %BSL5IFNF
w /FX$PNQPOFOUT w 6QEBUF$PNQPOFOUT w #VHpYFUD IUUQTHJUIVCDPNNBUFSJBMDPNQPOFOUTNBUFSJBMDPNQPOFOUTBOESPJESFMFBTFTUBHCFUB
CFUB w .BUFSJBM5IFNJOH w $PMPS 4IBQF 5ZQPHSBQIZ5IFNJOH w %BSL5IFNF
w /FX$PNQPOFOUT w 6QEBUF$PNQPOFOUT w #VHpYFUD
"OESPJE%FW4VNNJU %FWFMPQJOH5IFNFTXJUI4UZMF IUUQTZPVUVCF0XLG%I"04P
/FX$PNQPOFOUT w &YUFOEFE'MPBUJOH"DUJPO#VUUPO w .BUFSJBM#VUUPO5PHHMF(SPVQ w .BUFSJBM%BUF1JDLFS
&YUFOEFE'"#
&YUFOEFE'"# <com.google.android.material.floatingactionbutton.ExtendedF loatingActionButton android:id="@+id/extendedFab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:text="Create" app:icon="@drawable/ic_add" />
&YUFOEFE'"# extendedFab.extend() extendedFab.shrink()
.BUFSJBM#VUUPO5PHHMF(SPVQ
.BUFSJBM#VUUPO5PHHMF(SPVQ <com.google.android.material.button.MaterialButtonToggleGroup android:id="@+id/singleSelectToggleGroup" android:layout_width="wrap_content" android:layout_height="wrap_content" app:singleSelection="true"> <com.google.android.material.button.MaterialButton style=“?attr/materialButtonOutlinedStyle" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="Select1" /> <com.google.android.material.button.MaterialButton style="?attr/materialButtonOutlinedStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Select2" /> </com.google.android.material.button.MaterialButtonToggleGroup>
.BUFSJBM#VUUPO5PHHMF(SPVQ w DIFDLFE#VUUPO*EDIFDLFE#VUUPO*ET w DIFDL JE*OU VODIFDL JE*OU w
BEE0O#VUUPO$IFDLFE-JTUFOFS w DMFBS$IFDLFE w "OENPSFʜ
.BUFSJBM%BUF1JDLFS
.BUFSJBM%BUF1JDLFS val datePickerFragment = MaterialDatePicker.Builder.datePicker().build() val dateRangePickerFragment = MaterialDatePicker.Builder.dateRangePicker().build()
.BUFSJBM%BUF1JDLFS w TFU4FMFDUJPO E-POH TFU4FMFDUJPO E1BJS-POH -POH w
TFU5IFNF NBUFSJBM$BMFOEBS'VMMTDSFFO5IFNF NBUFSJBM$BMFOEBS5IFNF DVTUPNUIFNF
.BUFSJBM%BUF1JDLFS w TFU$BMFOEBS$POTUSBJOU D$BMFOEBS$POTUSBJOUT -JNJUUIFEJTQMBZSBOHFPGDBMFOEBSBOETFUBOPQFO"UNPOUI w TFU4UBSU E-POH TFU&OE
E-POH w TFU0QFO"U E-POH w TFU7BMJEBUPS WBMJEBUPS%BUF7BMJEBUPS %BUF7BMJEBUPS1PJOU'PSXBSE DMBTTUIBUJNQMFNFOUFE%BUF7BMJEBUPS
NBUFSJBMDPNQPOFOUTBMQIB
BMQIB w "EEFE4MJEFS w .BUFSJBM#VUUPO5PHHMF(SPVQTVQQPSUTWFSUJDBM PSJFOUBUJPO w "OENPSFVQEBUFT IUUQTHJUIVCDPNNBUFSJBMDPNQPOFOUTNBUFSJBMDPNQPOFOUTBOESPJESFMFBTFTUBHBMQIB
4MJEFS
4MJEFS <com.google.android.material.slider.Slider android:id="@+id/discreteSlider" android:layout_width="0dp" android:layout_height="wrap_content" android:stepSize="10" android:value="10" android:valueFrom="0.0" android:valueTo="100.0" app:floatingLabel="true"
/>
4MJEFS w TFU0O$IBOHF-JTUFOFS w TFU-BCFM'PSNBUUFS #BTJD-BCFM'PSNBUUFS DMBTTUIBUJNQMFNFOUFE-BCFM'PSNBUUFS
+FUQBDL$PNQPTF
5IBOLZPV