How to create a horizontal GroupChip in Android

In this android programming source code example, we are going to create a horizontal GroupChip in Android.

You can copy and adopt this source code example to your android project without reinventing the wheel.

Below is a step by step source code to create a horizontal GroupChip in Android.

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:padding="15dp"
    android:background="#CACACA">

    <com.google.android.material.chip.ChipGroup
        android:id="@+id/gender"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        app:chipSpacingHorizontal="10dp"
        app:singleSelection="true">
        <com.google.android.material.chip.Chip
            android:id="@+id/male"
            android:layout_width="wrap_content"
            android:layout_height="35dp"
            android:layout_marginLeft="20dp"
            android:text="Male"
            style="@style/Widget.MaterialComponents.Chip.Choice"/>

        <com.google.android.material.chip.Chip
            android:id="@+id/female"
            android:layout_width="wrap_content"
            android:layout_height="35dp"
            android:text="Female"
            style="@style/Widget.MaterialComponents.Chip.Choice"/>
    </com.google.android.material.chip.ChipGroup>

</RelativeLayout>

MainActivity.java

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.Toast;

import com.bluapp.androidview2.R;
import com.google.android.material.chip.Chip;
import com.google.android.material.chip.ChipGroup;

public class AndroidChipActivity12 extends AppCompatActivity {
    private ChipGroup chipGroup;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_android_chip12);
        chipGroup = (ChipGroup)findViewById(R.id.gender);
        chipGroup.setOnCheckedChangeListener(new ChipGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(ChipGroup chipGroup, int i) {
                Chip chip = chipGroup.findViewById(i);
                if(chip != null){
                    Toast.makeText(AndroidChipActivity12.this, chip.getText().toString(),Toast.LENGTH_LONG).show();
                }
            }
        });
    }
}

values/styles.xml

<style name="ChipTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

app/build.gradle

implementation 'com.google.android.material:material:1.0.0'

If you have any question or suggestions kindly use the comment box or you can contact us directly through our contact page below.

Add a Comment