Unlock Slider
完全自定义滑动解锁控件,使用Swift编写,简称 - UnlockSlider。
特点
- 全自定义颜色、字体和图像
- 可更改大小和边距
- 可更改动画速度,开启/关闭附加效果
- 委托方法
- 支持双向和单向滑动操作
要求
- iOS 14.0+
- Xcode 14.0+
- Swift 5.0+
通信
- 如果您想联系我们,请写信至 [邮箱隐私保护地址]
- 如果您发现了
错误,请在这里的 GitHub 上发起一个问题,并遵循指南。越详细越好! - 如果您想
贡献,请提交一个拉取请求。
安装
CocoaPods
CocoaPods 是 Cocoa 项目的依赖管理器。有关使用和安装说明,请访问他们的网站。要使用 CocoaPods 将 Alamofire 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它。
pod 'UnlockSlider', '~> 0.0.1'
Carthage
Carthage 是一个去中心化的依赖管理器,它构建您的依赖关系并提供二进制框架。要使用 Carthage 将 Alamofire 集成到您的 Xcode 项目中,请在您的 Cartfile
中指定它。
github "stolyarenkoks/UnlockSlider" "0.0.1"
Swift 包管理器
Swift 包管理器是一个用于自动化分发 Swift 代码的工具,它与 swift
编译器集成。它目前处于早期开发阶段,但 UnlockSlider 支持在支持的平台上使用它。
一旦您设置了 Swift 包,将 UnlockSlider 作为依赖项添加就像将其添加到您的 Package.swift
的 dependencies
值一样简单。
dependencies: [
.package(url: "https://github.com/stolyarenkoks/UnlockSlider", from: "0.0.1")
]
手动
如果您不希望使用上述任何依赖管理器,可以将 UnlockSlider 手动集成到您的项目中。
嵌入式框架
-
打开终端,使用
cd
命令进入您项目的高级目录,如果您项目尚未初始化为 git 仓库,请运行以下命令$ git init
-
通过运行以下命令将 UnlockSlider 添加为 git 子模块
$ git submodule add https://github.com/stolyarenkoks/UnlockSlider
-
打开新的
UnlockSlider
文件夹,并将UnlockSlider.xcodeproj
拖动到您应用程序 Xcode 项目的“项目导航器”中。它应该位于您的应用程序蓝色项目图标下方。它是在所有其他 Xcode 组之上还是之下并不重要。
-
在“项目导航器”中选择
UnlockSlider.xcodeproj
,并验证其部署目标是否与您应用程序目标匹配。 -
接下来,在“项目导航器”中(蓝色项目图标)选择您的应用程序项目,导航到目标配置窗口,在侧边栏的“目标”标题下选择应用程序目标。
-
在窗口顶部的标签栏中,打开“通用”面板。
-
单击“嵌入式二进制”部分下的
+
按钮。 -
您将看到两个不同的
UnlockSlider.xcodeproj
文件夹,每个文件夹都有两个不同的UnlockSlider.framework
版本,嵌套在“产品”文件夹中。您可以选择哪个“产品”文件夹无关紧要,但您选择的是顶部还是底部的
UnlockSlider.framework
则很重要。 -
选择顶部的
UnlockSlider.framework
用于 iOS,底部的一个用于 macOS。 -
这就完成了!
UnlockSlider.framework
会自动添加为目标的依赖项、链接框架,并在复制文件构建阶段嵌入,这些都是您在模拟器和设备上构建所需全部。
使用方式
UnlockSlider
import UnlockSlider
滑块可以作为一个子视图插入到视图层级中。
可以使用多个公开属性和方法配置外观。
let slider = UnlockSlider(frame: sliderContainer.frame, delegate: self)
slider.isDoubleSideEnabled = true
slider.isImageViewRotating = true
slider.isTextChangeAnimating = true
slider.isDebugPrintEnabled = false
slider.isShowSliderText = true
slider.isEnabled = true
slider.sliderAnimationVelocity = 0.2
slider.sliderViewTopDistance = .zero
slider.sliderImageViewTopDistance = 4.0
slider.sliderImageViewStartingDistance = 4.0
slider.sliderTextLabelLeadingDistance = .zero
slider.sliderCornerRadius = sliderContainer.frame.height / 2
slider.sliderBackgroundColor = .white
slider.sliderBackgroundViewTextColor = .red
slider.sliderDraggedViewTextColor = .red
slider.sliderDraggedViewBackgroundColor = .white
slider.sliderImageViewBackgroundColor = .red
slider.sliderImageTintColor = .white
slider.setSliderImage(UIImage(systemName: "chevron.right"))
slider.setSliderFont(.systemFont(ofSize: 15.0))
slider.setSliderBackgroundViewTitle("Slide to Activate")
slider.setSliderDraggedViewTitle("Slide to Deactivate")
view.addSubview(slider)
查看 Demo
项目以获取集成和自定义示例。
许可协议
UnlockSlider 在 MIT 许可下发布。有关详细信息,请参阅 LICENSE。