CoachMarker 2.0.0

CoachMarker 2.0.0

Ahmet Doğu 维护。




CoachMarker

CoachMarker 是一个简化入门教程的辅助工具

系统要求

iOS 8.0 或更高版本

安装

作为 CocoaPods 依赖项

Swift

将以下内容添加到您的 Podfile 中

pod 'CoachMarker', '~> 1.0'

Carthage

Carthage 是一个去中心化的依赖管理器,可以构建您的依赖并提供二进制框架。要使用 Carthage 将 CoachMarker 整合到您的 Xcode 项目中,请在您的 Cartfile 中指定它。

github "vicaren/CoachMarker" "master"

示例

使用 CoachMaker 非常简单。

基本实现

Swift

import CoachMarker

class ViewController: UIViewController {
    
    private var coachMarker: CoachMarker?
    
    let markerTexts = [
        "Two driven jocks help fax my big quiz.",
        "Pack my box with five dozen liquor jugs.",
        "The five boxing wizards jump quickly." ]
    
    let markerData = [ CoachMarkerCircleData(coordinate: CGPoint(x: 10, y: 10), radius: 30),
                       CoachMarkerCircleData(coordinate: CGPoint(x: 300, y: 50), radius: 60),
                       CoachMarkerSquareData(coordinate: CGPoint(x: 100, y: 100), size: CGSize(width: 200, height: 50))]
    
    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        showCoachMarker()
    }
    
    func showCoachMarker() {
        coachMarker = CoachMarker(parentView: self.view, dataSource: self)
        coachMarker?.delegate = self
        coachMarker?.showCoachMarker()
    }
}

extension ViewController: CoachMarkerDataSource {

    func numberOfMarkers(in marker: CoachMarker) -> Int {
        return markerTexts.count
    }
    
    func coachMarker(_ coachMarker: CoachMarker, viewForItemAtIndex: Int) -> UIView {
        let tutorial = Tutorial(frame: view.bounds)
        tutorial.delegate = self
        tutorial.infoText.text = markerTexts[viewForItemAtIndex]
        return tutorial
    }
    
    func coachMarker(_ coachMarker: CoachMarker, markerForItemAtIndex: Int) -> CoachMarkerData {
        return markerData[markerForItemAtIndex]
    }
    
}

extension ViewController: CoachMarkerDelegate {

    func coachMarkerDidShow(_ coachMarker: CoachMarker) {
        // TODO: When CoachMarker finished
    }
}

extension ViewController: TutorialDelegate {

    func tutorialDidSkipTapped(tutorial: Tutorial) {
        coachMarker?.skipCoachMarker()
    }
    
    func tutorialDidNextTapped(tutorial: Tutorial) {
        coachMarker?.nextCoachMarker()
    }
}

觉得这个文档有用吗?

觉得这个文档有用吗?❤️

通过加入 star 给这个仓库提供支持。⭐️

并且关注 ,看看我接下来的作品!🤩

贡献

如果您在库或示例中发现了错误,请提交问题。

鼓励贡献补丁,可以通过分叉此项目并提交拉取请求来提交。

如果您已经为 noticeboard 做出了贡献,但您的名字不在列表中,请随时添加自己!

许可证

CoachMarker 采用 MIT 许可证,请参阅 LICENSE 文件。