見出し画像

AndroidStudioで横にいい感じに並んだMaterialButtonを作りたい!!

これを作りたいけどググり方がわからん

AndroidStudioというかプログラミング初心者です

これを見るとSegumentedButtonと言うらしい
ここにはコードの例がなぜかないのでググる
ググるとStackOverflowで回答を見つけた

SegumentedButtonじゃないじゃねえか!

MaterialButtonToggleGroupというらしいです
(もしかするとSegumentedButtonが別であるのかもしれないけど本当にわからない)
というわけでコードは上記リンク回答者様のAbdullah Omer様の解答を元に記述させていただきます。

記述例

<com.google.android.material.button.MaterialButtonToggleGroup
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent">

        <com.google.android.material.button.MaterialButton
            android:layout_width="150dp"
            android:layout_height="wrap_content"
            android:text="理解した"
            style="?attr/materialButtonOutlinedStyle"/>
        <com.google.android.material.button.MaterialButton
            android:layout_width="150dp"
            android:layout_height="wrap_content"
            android:text="理解していない"
            style="?attr/materialButtonOutlinedStyle"/>

    </com.google.android.material.button.MaterialButtonToggleGroup>

これとtheme.xmlをMaterial3のやつにすると

こうなった

バグ発生!

バグではないです

いかにも二者択一な感じなのに両方選択できて草

<com.google.android.material.button.MaterialButtonToggleGroup
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:singleSelection="true">
//以下略

app:singleSelection="true"を付け足すと、一方のボタンを押すともう一方の選択が解除されるようになった

これで最初の画像のやつが完成しました

おそらく慣れてる方からするとなに電子ゴミ書いてるんだとなるかもしれませんが、私はここでかなり詰まったので、誰かの役に立つかもと思い書きました

この記事が気に入ったらサポートをしてみませんか?