Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

com.chinnsenn:submitbutton

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

com.chinnsenn:submitbutton

A button with animation.

  • 0.2.2
  • Source
  • Maven
  • Socket score

Version published
Maintainers
1
Source

自定义带进度圈的按钮 SubmitButton (kotlin)


Android

使用方法

0、在工程根目录 build.gradle 中添加

allprojects {
    repositories {
        google()
        mavenCentral() //0.2.2 开始
    }
}

1、在 gradle 里引用: 这里查看最新版本号

implementation 'com.chinnsenn:submitbutton:#last_version' 

2、在 xml 中添加控件

<com.chinnsenn.submitbutton.SubmitButton
        android:id="@+id/submitbutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:buttonColor="#11aa03"
        app:buttonStrokeWidth="15"
        app:buttonTextSize="15sp"
        app:completeText="上传完成"
        app:failureText="上传失败"
        app:progressColor="#6377ff"
        app:unKnownProgress = "true"
        app:submitText="确认" />
  • 属性也可以在代码中设置
val submitButton:SubmitButton = findViewById(R.id.submitbutton)
submitButton.submitText = "开始上传"
submitButton.completeText = "上传完成"
submitButton.failureText = "上传失败"
submitButton.unKnownProgress = false

属性介绍

属性名描述
buttonColor按钮颜色
buttonStrokeWidth线框宽度
buttonTextSize按钮文字大小
completeText完成文案
failureText失败文案
progressColor进度条颜色
submitText起始文字
unKnownProgress不能确定进度

两种进度条

  • 不确定进度(默认)

submitButton.unKnownProgress = true

这种情况下需要手动调用 SubmitButton#stop() 方法结束转进度


  • 可以确定进度

不需要调用 SubmitButton#stop()

submitButton.unKnownProgress = false

但需要在你网络请求进度中或者其他地方调用

SubmitButton#setProgress(percent:Float) //需要你计算好百分比

或者

SubmitButton#setProgressAndTotal(progress: Float, total: Float) //传入当前数值和总进度 否则进度圈不会变化。

失败状态

在网络请求失败的回调里调用 SubmitButton#failure()

失败

此控件为还原 Dribble 上一个动效而制作

Dribble

更新日志

  • v0.2.0 新增具体进度数字(确定进度状态下)
  • v0.2.0.1 修改 onComplete() 调用时机,在 EndAnimator#onAnimationEnd()中调用
  • v0.2.3 托管库移动到 mavenCentral

更新计划

  • 支持使用背景selector (issues#1)
  • 更多自定义参数

因为没有具体参数,只能摸索的仿造,而且没有使用场景可能导致兼容性不好,有许多不足之处,也欢迎PR。

FAQs

Package last updated on 27 Oct 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc