
CRNetworkButton是什么Cleveroad开源iOS网络请求加载动画按钮库全面解析【免费下载链接】CRNetworkButtonSend Button for iOS项目地址: https://gitcode.com/gh_mirrors/cr/CRNetworkButton当用户在 iOS App 里点击发送提交这类按钮后网络请求期间往往没有任何视觉反馈用户只能干等甚至误以为卡死而反复点击。Cleveroad 团队开源的CRNetworkButton正是为这种场景而生的 iOS 网络请求加载动画按钮库按钮被点击后自动播放旋转加载动画请求结束再以对勾、叉号等动画反馈成功或失败让每一次网络请求都清晰可见。本文将从零开始为你全面解析 CRNetworkButton 的安装、配置与使用技巧。为什么你需要一个会加载的网络请求动画按钮普通的 UIButton 在网络请求期间只有两种状态可点击、不可点击。这在体验上存在明显短板缺乏反馈用户点击后不知道请求是否在进行容易重复提交等待焦虑加载过程不可见用户容易产生卡死错觉结果不明请求成功或失败仅靠弹窗提示不够直观。CRNetworkButton 正是为了解决这些痛点而设计它把按钮与加载动画合二为一点击即触发动画完成即展示结果整个交互一气呵成。CRNetworkButton 核心特性一览 ✨作为一个轻量级的 iOS 网络请求加载动画按钮库CRNetworkButton 的特性相当实用一键加载动画点击按钮自动进入旋转加载状态无需手写动画代码两种加载模式默认旋转动画模式以及可显示进度的 progressMode 进度条模式成功/失败反馈请求结束自动播放对勾成功或叉号失败动画失败时按钮变为红色Storyboard 可视化配置基于IBDesignable与IBInspectable所有属性均可直接在 Interface Builder 中调整无需写代码自动恢复支持shouldAutoReverse完成后自动回到初始状态兼容性好最低支持 iOS 8基于 UIKit 实现接入成本极低。最快集成方法CocoaPods 一键安装 CRNetworkButton 已发布到 CocoaPods集成只需两步第一步在 Podfile 中添加一行依赖pod CRNetworkButton第二步在终端执行pod install然后在代码中导入即可import CRNetworkButton整个库的核心源码只有一个文件CRNetworkButton/Classes/CRNetworkButton.swift轻量无依赖非常适合快速接入现有项目。如果你想先跑通官方示例可以git clone https://gitcode.com/gh_mirrors/cr/CRNetworkButton然后进入 Example 目录执行pod install即可查看完整演示工程。三行代码快速上手 CRNetworkButton 的使用方式非常简单核心就是三个方法sender.startAnimate() // 开始加载动画 sender.stopAnimate() // 加载成功播放对勾动画 sender.stopByError() // 加载失败播放叉号动画红色把它们挂到你的网络请求回调中即可SomeNetworkManager.performRequest( withSuccess: { sender.stopAnimate() }, error: { sender.stopByError() } )更贴心的是animateOnTap属性默认为true也就是说用户点击按钮时会自动触发加载动画你甚至不需要手动调用startAnimate()。两种加载模式详解 模式一默认旋转动画这是 CRNetworkButton 的默认模式。点击按钮后按钮会收缩为圆形内部出现若干旋转的圆点/线段形成流畅的加载指示。通过linesCount线条数量、velocity转速和dotLength点长度等属性你可以轻松调节动画的形态与节奏。模式二progressMode 进度环模式如果你希望展示真实的下载/上传进度只需开启progressMode true然后在请求过程中不断更新进度func downloadProgress(progress: CGFloat) { networkButton.updateProgress(progress) // 0.0 ~ 1.0 }此时按钮会显示一个圆环进度条直观反映请求完成百分比非常适合文件上传、图片加载等场景。成功、失败状态动画与文本自定义 CRNetworkButton 对状态反馈的支持非常完善startText/endText设置加载前与完成后的按钮文字默认分别为 Go 与 DoneerrorText调用stopByError()时显示的失败文案默认为 ErrorshouldAutoReverse设为true后动画结束自动恢复初始状态适合循环使用的场景crDotColor/crErrorColor/crLineWidth/crBorderColor自定义加载点颜色、错误颜色、线条宽度与边框颜色轻松匹配你的 App 主题。零代码配置Storyboard 可视化设置 ️这是 CRNetworkButton 的一大亮点。得益于IBDesignable和IBInspectable你可以在 Storyboard 中实时预览按钮的动画效果并通过右侧属性面板直接调整所有配置项——无需编写一行代码拖拽即可完成一个自带加载动画的按钮。具体做法在 Storyboard 中拖入一个 UIButton将 Class 改为CRNetworkButton然后在属性面板中设置StartText、EndText、linesCount、velocity等参数即可实时生效。示例工程的Example/CRNetworkButton/ViewController.swift中有完整的调用示例可供参考。关键 API 速查表 方法 / 属性作用startAnimate()开始加载动画stopAnimate()停止加载播放成功对勾动画stopByError()停止加载播放失败叉号动画红色updateProgress(_:)更新进度环需开启 progressModeresetToReady()重置为初始状态completionHandler动画完成后的回调animateOnTap点击是否自动触发动画默认 trueshouldAutoReverse完成后是否自动恢复初始状态progressMode是否启用进度环模式总结 CRNetworkButton 是一个小巧但体验极佳的 iOS 网络请求加载动画按钮库它用精致的动画取代了枯燥的等待让网络请求的状态一目了然同时通过 Storyboard 可视化配置大幅降低了使用门槛。无论是发送消息、提交表单还是上传文件只需几分钟接入就能显著提升你 App 的交互质感。如果你正在寻找一款开箱即用的加载动画按钮CRNetworkButton 值得一试。【免费下载链接】CRNetworkButtonSend Button for iOS项目地址: https://gitcode.com/gh_mirrors/cr/CRNetworkButton创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考