EasyStartGuide
将您自己的应用程序指南轻松实现到 iOS 中用 Swift 编写的视图控制器。
示例
要运行示例项目,先克隆仓库,然后从示例目录运行 pod install
。
最低要求
- Swift 4+
- iOS 9+
安装
EasyStartGuide 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中:
pod 'EasyStartGuide'
使用
基本用法
- 获取 EasyStartGuide 的实例并创建课程数组。课程将与您传入的课程参数(如 targetView)关联的视图相关联。
let easyStartGuideInstance = EasyStartGuide.instance
let lessons = [EasyStartGuide.GuideLesson(view: targetView, text: "My first lesson!")]
- 使用视图控制器实例和课程数组开始教程。
easyStartGuideInstance.startTutorial(in: viewController, withLessons: lessons)
就是这么多!
可选参数
您可以为每个课程和整个教程添加可选参数。
局部参数
局部参数可以单独添加到每个课程对象中。包括课程位置和课程箭头方向。
位置
如上所述,此选项设置箭头指针的位置和课程视图的坐标。要设置位置,您应在 GuideLesson 构造函数中添加一个参数。
EasyStartGuide.GuideLesson(view: targetView, text: "My first lesson!", location: .topLeft)
可能值
- 角
.topLeft
- 左上角(默认值).topRight
- 右上角.bottomLeft
- 左下角.bottomRight
- 右下角- 边的中心
.topCenter
- 上边的中心.bottomCenter
- 下边的中心.leftCenter
- 左边的中心.rightCenter
- 右边的中心.center
- 视图的中心.custom(x: CGPoint, y: CGPoint)
- 从左上角开始的自定义点
箭头方向
定义课程视图箭头允许方向的选项。要设置箭头方向,请使用相应的参数。
EasyStartGuide.GuideLesson(view: targetView, text: "My first lesson!", arrowDirection: .up)
可能值
.up
- 仅向上箭头.down
- 仅向下箭头.left
- 仅从右向左箭头.right
- 仅从左向右箭头.any
- 任何箭头方向(默认值)
全局参数
全局参数可以作为当前EasyStartGuide实例的全局参数添加。它们会影响整个教程,且在教程进行中时无法修改。
要设置实例的全局参数,您应设置options
属性。例如
easyStartGuideInstance.options = [.backgroundColor(UIColor.lightGray), .cornerRadius(5.0)]
背景颜色
包括箭头颜色在内的课程视图背景颜色。默认值为UIColor.lightGray。
用法
.backgroundColor(UIColor.darkGray)
文字颜色
课程文本的颜色。默认值为UIColor.white。
用法
.textColor(UIColor.black)
❗️ 注意如果您设置了自定义视图参数,则文本颜色将无法与此参数一起使用!
圆角半径
课程视图的圆角半径。
用法
.cornerRadius(5.0)
❗️ 注意由于某些原因,它的值不能大于13.0且小于0.0。更大的值不会影响视图。
自定义视图
此参数提供了自定义视图,课程视图将基于此视图。自定义视图 必需 应具有标签视图以在其上打印文本。课程的背景颜色和文本颜色将从自定义视图属性中应用。
用法
.customView(containerView: view, label: label) // view and label are the existing vews
❗️ 注意容器视图应具有确定的宽度和高度!
消失模式
将关闭课程视图的操作。
用法
.dismissMode(.byClickAnywhere)
可能值
.byClickAnywhere
- 在屏幕上的任何位置点击后关闭课程.byClickOnGuide
- 只有在课程视图中点击后才关闭课程(默认值)
❗️ 注意此参数与自定义视图兼容性很好,即使在点击自定义视图上的按钮后也不会关闭课程。
作者
BardRedStar,[email protected]
许可协议
EasyStartGuide 免费使用 MIT 许可协议。有关更多信息,请参阅 LICENSE 文件。