0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Jetpack ComposeのButtonの種類

Last updated at Posted at 2024-10-13

はじめに

Jetpack Composeには、マテリアルデザインのボタンの種類が5つ存在するので紹介していきます。
Android Developersの記事を参考にしています。

button.jpg

ボタンを配置

Composable関数内に書くことでボタンを配置できます。

@Composable
fun ButtonView() {
    Button(onClick = { }) {
        Text("Button")
    }
}

Buttonの種類

Button

primaryの色で塗りつぶされたボタンです。
メインの色なので濃いです。

Button(onClick = { }) {
    Text("Button")
}

button 2.jpg

FilledTonalButton

primaryContainerの色で塗りつぶされたボタンです。
メインの色を少し薄めた色になります。

FilledTonalButton(onClick = { }) {
    Text("FilledTonalButton")
}

button 3.jpg

OutlinedButton

枠線付きのボタンです。

OutlinedButton(onClick = { }) {
    Text("OutlinedButton")
}

button 4.jpg

ElevatedButton

ボタンが立体的になります。

ElevatedButton(onClick = { }) {
    Text("ElevatedButton")
}

button 5.jpg

TextButton

テキストのみのボタンです。

TextButton(onClick = { }) {
    Text("TextButton")
}

button 6.jpg

API サーフェス

以下の機能が用意されています。
・onClick
・enabled
・colors
・contentPadding

onClick

引数としてonClickに以下のように書いて代入する。
そうすることでボタンをタップすると、代入した処理が実行される。

Button(
    onClick = { 
        print("タップした。")
    }
) {
    Text("Button")
}

画像はsnackbarを表示させている。
tapped.jpg

enabled

引数としてenabledにtrueを代入すると活性、falseを代入すると非活性となりボタンがグレーアウトし反応しなくなる。

Button(
    onClick = { 
        print("タップした。")
    },
    enabled = false
) {
    Text("Button")
}

画像はfalseの状態。
enable.jpg

colors

引数としてcolorsに、Composable関数のbuttonColorsをColorを指定して呼び出すことで、色を変えることができる。

Button(
    onClick = { 
        print("タップした。")
    },
    colors = ButtonDefaults.buttonColors(
        containerColor = Color.Red,
        contentColor = Color.Black
    )
) {
    Text("Button")
}

画像は背景を赤、文字を黒で指定している。
color.jpg

contentPadding

引数としてcontentPaddingに、Stable関数のPaddingValuesの引数に値を設定して代入することで、ボタン内のpaddingを設定できる。

Button(
    onClick = { 
        print("タップした。")
    },
    contentPadding = PaddingValues(32.dp)
) {
    Text("Button")
}

ハンバーグみたいになりました。
padding.jpg

筆者が実装したソース

参考資料

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?