综合技术

CheckableChipView

微信扫一扫,分享到朋友圈

CheckableChipView
0

CheckableChipView

A checkable widget for Android. Based on the EventFilterView from the Google I/O 2018 app .

Requires Android minSdkVersion 21.

Setup

Make sure you have the jcenter repo in your project level build.gradle

allprojects {
    repositories {
        jcenter()
    }
}

Add the dependency to your lib/app build.gradle

dependencies {
    implementation 'com.github.okdroid:checkablechipview:1.0.2'
}

Usage

XML

Include the widget into your xml layout like this


The following xml attributes are supported

Attribute Description
android:text The text to display
android:textColor The default text color
android:color The color of the indicator dot as well as the background color when the widget is checked
android:background The default background color
android:checked The checked state of the widget, either true or false
app:ccv_outlineColor The color of the outline
app:ccv_outlineCornerRadius The corner radius of the outline, in dp. Defaults to a pill shape if not set
app:ccv_outlineWidth The stroke width of the outline, in dp
app:ccv_checkedTextColor The text color when the widget is checked
app:ccv_foreground The foreground drawable to display

In code

The state of the widget can be observed like this

chip.onCheckedChangeListener = { view: CheckableChipView, isChecked: Boolean ->
    // do your logic here
}

To switch between checked/unchecked state programatically with animation, use the following method:

chip.setCheckedAnimated(checked = true) {
    // onAnimationEnd callback
}

Plus, there are following methods at your service for changing the state without animation:

if (!chip.isChecked) {
    chip.isChecked = true
}

chip.toggle() // toggles between states

Acknowledgements

Thanks to the team behind the Google I/O app . Thank you for open sourcing the code and letting others reuse and learn from it.

Thanks to Nick Butcher for the initial implementation in the I/O app.

License

Copyright 2018 Google, Inc.
Copyright 2018 okdroid

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.

阅读原文...


The Android Arsenal

大一点,再大一点!富士中画幅无反相机 GFX 50S 简评

上一篇

应对汽车行业自动化、电动化以及网联化变革,ADI 手握哪些杀手级产品与技术?

下一篇

您也可能喜欢

评论已经被关闭。

插入图片
CheckableChipView

长按储存图像,分享给朋友