Popularity
1.2
Growing
Activity
2.3
-
28
1
2

Description

ComposableButtonToggleGroup is the implementation of MaterialButtonToggleGroup for Jetpack Compose

Programming language: Kotlin
License: Apache License 2.0

Composable Button Toggle Group alternatives and similar packages

Based on the "Button Widget" category.
Alternatively, view composable-button-toggle-group alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Composable Button Toggle Group or a related project?

Add another 'Button Widget' Package

README

Composable Button Toggle Group

ComposableButtonToggleGroup is the implementation of MaterialButtonToggleGroup for Jetpack Compose

Composable Button Toggle Group is the implementation of MaterialButtonToggleGroup for Jetpack Compose.
Android Arsenal Android Arsenal API
Version Maven Central

Setup

Add following line of code to your project level gradle file

  repositories {
    mavenCentral()
  }

Add following line of code to your module(app) level gradle file

Groovy:

    implementation 'com.robertlevonyan.compose:buttontogglegroup:<Version>'

Kotlin:

    implementation("com.robertlevonyan.compose:buttontogglegroup:$Version")

Maven:

  <dependency>
    <groupId>com.robertlevonyan.compose</groupId>
    <artifactId>buttontogglegroup</artifactId>
    <version>Version</version>
    <type>pom</type>
  </dependency>

Usage

RowToggleButtonGroup

  Box(modifier = Modifier.fillMaxSize()) {
    RowToggleButtonGroup(
      modifier = Modifier,
      buttonCount = 4,
      selectedColor = Color.Gray,
      unselectedColor = LightGray,
      selectedContentColor = Color.White,
      unselectedContentColor = DarkGray,
      elevation = ButtonDefaults.elevation(0.dp), // elevation of toggle group buttons
      buttonIcons = arrayOf(
        painterResource(id = R.drawable.ic_format_align_left),
        painterResource(id = R.drawable.ic_format_align_center),
        painterResource(id = R.drawable.ic_format_align_right),
        painterResource(id = R.drawable.ic_format_align_justify),
      ),
    ) { index ->
      // check index and handle click
    }
  }

alt text

ColumnToggleButtonGroup

  Box(modifier = Modifier.fillMaxSize()) {
    ColumnToggleButtonGroup(
      modifier = Modifier,
      primarySelection = 0,
      buttonCount = 2,
      selectedColor = Color.Gray,
      unselectedColor = LightGray,
      selectedContentColor = Color.White,
      unselectedContentColor = DarkGray,
      elevation = ButtonDefaults.elevation(0.dp), // elevation of toggle group buttons
      buttonTexts = arrayOf("Android", "iOS"),
      buttonIcons = arrayOf(
        painterResource(id = R.drawable.ic_android),
        painterResource(id = R.drawable.ic_ios),
      ),
    ) { index ->
      // check index and handle click
    }
  }

alt text

Versions

1.0.1 - 1.0.5

Icon button support added, Text made single line

1.0.0

First version of library

Contact

Licence

    Composable Button Toggle Group©
    Copyright 2022 Robert Levonyan
    Url: https://github.com/robertlevonyan/composable-button-toggle-group

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.


*Note that all licence references and agreements mentioned in the Composable Button Toggle Group README section above are relevant to that project's source code only.