Jetpack ComposeのCodeLaboをやってみた

Jetpack ComposeがBetaになったので
さすがにそろそろやらないとなぁと思ってた

GW時間があったのでCodeLaboをやってみた


・CodeLabo
Jetpack Compose basics
https://developer.android.com/codelabs/jetpack-compose-basics?hl=en#0

 

・対象のAPI level
4系切らないとだめぽ
Make sure you select a minimumSdkVersion of at least API level 21, which is the minimum API Compose supports.

 

・gradle
Composeのありなしを定義する
buildFeatures { compose true }

 

・@Preview
@PreviewでAndroidStudio上にPreviewが出る
文字の変更等であればリアルタイムに変更が反映される
@Preview(showBackground = true, name = “aaaa”)
aaaaがpreviewのタイトルになる
また、interaction modeにするとボタンクリックとかも動くようになる

 

・Surface
Surfaceで背景を設定する

 

・@Composable
@Composableを変更するとAndroidStudio上にrefreshボタンが出てくる
@ComposableはUnit型の関数
渡すときは関数渡しで@Composableをつける

 

・Column
Column Composable function (similar to a vertical LinearLayout).

 

・状態の管理
状態の管理はmutableStateOfを使う
rememberを使わないとrecomposeされるとデータが消える

 

・Modifier
Modifier.fillMaxHeight() max_parent

 

・スクロール
ScrollableColumn = Scrollview
LazyColumn = RecyclerView

 

新しい技術って学ぶと楽しそうですね
ただ新規で作るアプリは少なそうなので方針決めてから取り入れていきたいところ

既存のXMLとどうやって共存させていくか
再利用しやすいようにどうやって作るか
色々できまくりそうなので、どこまでcomposeに持たせるか
辺りの方針決めてからだなぁ
まずはしょぼい画面から導入するに決まってるけど・・・w

関連記事:

Pocket