SwitchButton

Additional

Language
Java
Version
N/A
Created
Sep 9, 2014
Updated
Dec 29, 2020
Owner
kyleduo
Contributors
kyleduo
Pascal Borreli (pborreli)
梧桐 (wutongke)
Luis Medeiros (lpmfilho)
ytianhui
5
Activity
Badge
Generate
Download
Source code
APK file

Commercial

SwitchButton

To get a quick preview, you can get Demo apk in Google Play or Directly download.

This project provides you a convenient way to use and customise a SwitchButton widget in Android.


Migrate to 2.0.0 (迁移到2.0.0)

ENG

There is a big diagram below to show how SwitchButton measure it self in 2.0.0. It is strongly recommended that you should check it out.

  1. kswBackMeasureRatio has been removed from SwitchButton attributes since it has an ambiguous meaning. I've add the new kswThumbRangeRatio attribute to represent how much multiple the scroll range of thumb than the width of thumb.
  2. kswTextMarginH and kswAutoAdjustTextPosition have been removed from SwitchButton attributes since I updated the measurement logic of text part. And these two attributes do not represent the back meaning well. kswTextThumbInset, kswTextExtra and kswTextAdjust was introduced to represent "how much the text go under thumb", "how much extra space do you want around the text" and "how much to move the text from the center of text area to adjust the text's position". There are all shown on the diagram.
  3. Setters and getters are also changed due to the change of attributes.

CHN

下面有一张图表来解释SwitchButton在2.0.0版本中是如何进行测量的,非常建议你看一看。

  1. kswBackMeasureRatio 属性被移除了,因为名称有歧义。新增加的 kswThumbRangeRatio 属性表示thumb移动区域和thumb宽度的比值。
  2. kswTextMarginHkswAutoAdjustTextPosition 属性被移除了,因为我更新了对文字的测量逻辑,而且这两个属性名称表意不明确。我增加了kswTextThumbInset, kswTextExtrakswTextAdjust 这三个新属性来分别表示“文字在thumb下面的距离”,“额外文字空间”和”文字调节距离“。这些都在图表中有所体现。
  3. setter和getter都跟随属性名称的改变而进行了改变。

Diagram: How SwitchButton Measure

This diagram shows how SwitchButton measure itself and what does those nouns mean. To measure width is much complex than the height, so if you know how to measure width, you know how to measure height. And text measurement and location increase the complexity.