SwitchButton

SwitchButton.An *beautiful+lightweight+custom-style-easy* switch widget for Android

License

License

MIT
GroupId

GroupId

com.github.zcweng
ArtifactId

ArtifactId

switch-button
Last Version

Last Version

0.0.3
Release Date

Release Date

Type

Type

aar
Description

Description

SwitchButton
SwitchButton.An *beautiful+lightweight+custom-style-easy* switch widget for Android
Project URL

Project URL

https://github.com/zcweng/SwitchButton
Source Code Management

Source Code Management

https://github.com/zcweng/SwitchButton

Download switch-button

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.zcweng/switch-button/ -->
<dependency>
    <groupId>com.github.zcweng</groupId>
    <artifactId>switch-button</artifactId>
    <version>0.0.3</version>
    <type>aar</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.zcweng/switch-button/
implementation 'com.github.zcweng:switch-button:0.0.3'
// https://jarcasting.com/artifacts/com.github.zcweng/switch-button/
implementation ("com.github.zcweng:switch-button:0.0.3")
'com.github.zcweng:switch-button:aar:0.0.3'
<dependency org="com.github.zcweng" name="switch-button" rev="0.0.3">
  <artifact name="switch-button" type="aar" />
</dependency>
@Grapes(
@Grab(group='com.github.zcweng', module='switch-button', version='0.0.3')
)
libraryDependencies += "com.github.zcweng" % "switch-button" % "0.0.3"
[com.github.zcweng/switch-button "0.0.3"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

SwitchButton

SwitchButton.An beautiful+lightweight+custom-style-easy switch widget for Android,minSdkVersion >= 11
issues welcome~

Features

-depend without third-part library
-without raw files(pictures/drawables etc...), only one java and style.xml file
-drag switch supported

UseAge

gradle:

repositories {
    mavenCentral()
    jcenter()
}

...

dependencies {
    compile 'com.github.zcweng:switch-button:0.0.3@aar'
}

layout.xml:

<LinearLayout 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:orientation="vertical">

    <com.suke.widget.SwitchButton
        android:id="@+id/switch_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

</LinearLayout>

Activity.java:

com.suke.widget.SwitchButton switchButton = (com.suke.widget.SwitchButton)
    findViewById(R.id.switch_button);

switchButton.setChecked(true);
switchButton.isChecked();
switchButton.toggle();     //switch state
switchButton.toggle(false);//switch without animation
switchButton.setShadowEffect(true);//disable shadow effect
switchButton.setEnabled(false);//disable button
switchButton.setEnableEffect(false);//disable the switch animation
switchButton.setOnCheckedChangeListener(new SwitchButton.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(SwitchButton view, boolean isChecked) {
        //TODO do your job
    }
});

More Style:

<attr name="sb_shadow_radius" format="reference|dimension"/>       阴影半径
<attr name="sb_shadow_offset" format="reference|dimension"/>       阴影偏移
<attr name="sb_shadow_color" format="reference|color"/>            阴影颜色
<attr name="sb_uncheck_color" format="reference|color"/>           关闭颜色
<attr name="sb_checked_color" format="reference|color"/>           开启颜色
<attr name="sb_border_width" format="reference|dimension"/>        边框宽度
<attr name="sb_checkline_color" format="reference|color"/>         开启指示器颜色
<attr name="sb_checkline_width" format="reference|dimension"/>     开启指示器线宽
<attr name="sb_uncheckcircle_color" format="reference|color"/>     关闭指示器颜色
<attr name="sb_uncheckcircle_width" format="reference|dimension"/> 关闭指示器线宽
<attr name="sb_uncheckcircle_radius" format="reference|dimension"/>关闭指示器半径
<attr name="sb_checked" format="reference|boolean"/>               是否选中
<attr name="sb_shadow_effect" format="reference|boolean"/>         是否启用阴影
<attr name="sb_effect_duration" format="reference|integer"/>       动画时间,默认300ms
<attr name="sb_button_color" format="reference|color"/>            按钮颜色
<attr name="sb_show_indicator" format="reference|boolean"/>        是否显示指示器,默认true:显示
<attr name="sb_background" format="reference|color"/>              背景色,默认白色
<attr name="sb_enable_effect" format="reference|boolean"/>         是否启用特效,默认true

ScreenShot

Sample Apk:

License

MIT, See the [LICENSE] file for details.

Versions

Version
0.0.3
0.0.2
0.0.1