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
ConstraintLayout : Flow
Search
Nabe
June 12, 2019
Programming
0
850
ConstraintLayout : Flow
帰ってきた関西モバイルアプリ研究会#2
https://kanmoba.connpass.com/event/134059/
Nabe
June 12, 2019
Tweet
Share
More Decks by Nabe
See All by Nabe
Material 3で Material 2ぽい見た目にする
numeroanddev
2
300
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
290
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
340
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
740
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
580
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.3k
Refreshing widgets in Android 12
numeroanddev
2
530
既存のAndroidプロジェクトを Jetpack Composeに移行してみる / Migrate existing Android project to Jetpack Compose
numeroanddev
1
760
Material Motion
numeroanddev
0
470
Other Decks in Programming
See All in Programming
Next.js App Router
quramy
12
2k
Open AI APIを使う前に知っておきたいアカウントTier の話
akki_megane
0
100
敵対的ポイフル
futabato
0
150
Hanami and htmx
bkuhlmann
0
230
Ruby Function Composition
bkuhlmann
1
340
Deep Dive into React Stream/Serialize
mugi_uno
3
750
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
280
Apache Hive 4 on Treasure Data
ryukobayashi
1
450
Node.js v22 で変わること
yosuke_furukawa
PRO
12
4k
Snowflakeで眠ったデータを起こそう!
estie
0
160
Introducing Kotlin Multiplatform in an existing mobile app - Workshop Edition | AndroidMakers Paris
prof18
0
160
Milestoner
bkuhlmann
1
420
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
22
6.4k
The Cost Of JavaScript in 2023
addyosmani
21
3.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
242
1.2M
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
14
8.4k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
Teambox: Starting and Learning
jrom
128
8.4k
Infographics Made Easy
chrislema
238
18k
Docker and Python
trallard
35
2.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
What's new in Ruby 2.0
geeforr
337
31k
Transcript
$POTUSBJOU-BZPVU'MPX ؔϞό ,B[VLJ8BUBOBCF
1SPpMF w ͳ w 5XJUUFS!/BCF$PUU w (JU)VC/6NFSP"OE%FW w 'FOSJS*OD w
"OESPJE"QQ%FWFMPQFS
8IBU`T'MPX w $POTUSBJOU-BZPVUBMQIB͔Β w 'MFYCPYͷΑ͏ͳϨΠΞτΛ࣮ݱͰ͖Δ w 7JFXͷ֊ΛϑϥοτʹอͯΔ w .PUJPO-BZPVUͱΈ߹ΘͤΔ͜ͱ͕Ͱ͖Δ
#BTJD <com.google.android.material.button.MaterialButton android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button1" /> <com.google.android.material.button.MaterialButton android:id="@+id/button2" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="Button2" /> …
#BTJD <androidx.constraintlayout.helper.widget.Flow android:id="@+id/flowLayout" android:layout_width="0dp" android:layout_height="wrap_content" android:orientation=“horizontal” app:constraint_referenced_ids=“button1,button2,butt…” app:flow_wrapMode="aligned" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" />
#BTJD w Πϝʔδ
0SJFOUBUJPO w )PSJ[POUBM android:orientation="horizontal" w 7FSUJDBM android:orientation="vertical"
w )PSJ[POUBM w 7FSUJDBM 0SJFOUBUJPO
XSBQ.PEF w /POF app:flow_wrapMode="none" w $IBJO app:flow_wrapMode="chain" w "MJHO app:flow_wrapMode="none"
w $IBJO w "MJHO XSBQ.PEF
NBY&MFNFOUT8SBQ app:flow_maxElementsWrap=“integer"
NBY&MFNFOUT8SBQ
0UIFSBUUSJCVUFT w $IBJO4UZMF app:flow_verticalStyle="packed|spread|spread_inside" app:flow_horizontalStyle="packed|spread|spread_inside" w #JBT app:flow_verticalBias="float" app:flow_horizontalBias="float" w
"MJHO app:flow_horizontalAlign="start|end|center" app:flow_verticalAlign="top|bottom|center|baseline" w (BQ app:flow_verticalGap="dimension" app:flow_horizontalGap="dimension"
8JUI.PUJPO-BZPVU
<ConstraintSet android:id="@+id/start"> <Constraint android:id="@id/flowLayout"> <Layout android:layout_width="0dp" android:layout_height="wrap_content" motion:constraint_referenced_ids=“button1,button2,butt…” motion:layout_constraintEnd_toEndOf="parent" motion:layout_constraintStart_toEndOf="@id/sideLayout"
motion:layout_constraintTop_toTopOf="parent" /> </Constraint> <Constraint android:id="@id/button1"> <Layout android:layout_width="92dp" android:layout_height="92dp" /> </Constraint> … </ConstraintSet> 8JUI.PUJPO-BZPVU
<ConstraintSet android:id="@+id/end"> <Constraint android:id="@id/flowLayout"> <Layout android:layout_width="42dp" android:layout_height="0dp" motion:constraint_referenced_ids=“button2,button3,…” motion:layout_constraintBottom_toBottomOf="parent" motion:layout_constraintEnd_toEndOf="parent"
motion:layout_constraintStart_toEndOf="@id/sideLayout" motion:layout_constraintTop_toTopOf="parent" /> </Constraint> <Constraint android:id="@id/button1"> <Layout android:layout_width="120dp" android:layout_height="120dp" android:layout_marginTop="24dp" motion:layout_constraintEnd_toEndOf="@id/sideLayout" motion:layout_constraintStart_toStartOf="parent" motion:layout_constraintTop_toTopOf="parent" /> </Constraint> <Constraint android:id="@id/button2"> <Layout android:layout_width="42dp" android:layout_height="42dp" /> </Constraint> … </ConstraintSet> 8JUI.PUJPO-BZPVU
None
None
None
w IUUQTBOESPJETUVEJPHPPHMFCMPHDPN DPOTUSBJOUMBZPVUBMQIBIUNM w IUUQTBOESPJETUVEJPHPPHMFCMPHDPN DPOTUSBJOUMBZPVUCFUBIUNM w IUUQTEFWFMPQFSBOESPJEDPNSFGFSFODFBOESPJE TVQQPSUDPOTUSBJOUIFMQFS'MPXIUNM