StepperView 1.6.7

StepperView 1.6.7

Badrinath Venkatnarayansetty 维护。



StepperView

SwiftUI iOS步骤指示组件

CI Status License Platform Version Swift Package Manager compatible Carthage compatible documentation Twitter


StepperView

目录

特点

  • 支持垂直和水平对齐。
  • 支持iOS和WatchOS
  • 支持圆形、图像、自定义视图、动画步骤指示器
  • 可自定义线条、间距和动画选项。
  • 提供中转功能,在步骤指示器之间添加中间阶段。

文档

StepperView 参考手册

安装

要运行示例项目,请先克隆存储库,然后从示例目录中运行 pod install

CocoaPods

StepperView 通过 CocoaPods 提供。要安装,只需将以下行添加到您的 Podfile 中。

pod 'StepperView','~> 1.5.6'

Carthage

Carthage 是一个去中心化的依赖项管理器,它会构建您的依赖项并为您提供二进制框架。要在 Carthage 中将 StepperView 集成到您的 Xcode 项目中,请将其在 Cartfile 中指定。

github "badrinathvm/stepperView" == 1.5.6

Swift 包管理器

StepperView 通过 Swift 包管理器 提供。要安装,只需将其添加到 dependencies 中的 Package.swift

dependencies: [
      .package(url: "https://github.com/badrinathvm/StepperView.git", from: "1.5.6")
]

软件要求

  • iOS 13.0+
  • Xcode 11.2+
  • Swift 5.0+
  • CocoaPods 1.6.1+

用例

example1 example2 example2 example2

iPhone

StepperView StepperViewWithPitStops StepperViewWithMultipleOptions

Apple Watch 支持

Watch_StepperView_Vertical Watch_StepperView_Icon Watch_StepperView_Horizontal Watch_StepperView_Pitstop

用法

import StepperView

let steps = [ Text("Cart").font(.caption),
              Text("Delivery Address").font(.caption),
              Text("Order Summary").font(.caption),
              Text("Payment Method").font(.caption),
              Text("Track").font(.caption)]

let indicationTypes = [StepperIndicationType.custom(NumberedCircleView(text: "1")),
                        .custom(NumberedCircleView(text: "2")),
                        .custom(NumberedCircleView(text: "3")),
                        .custom(NumberedCircleView(text: "4")),
                        .custom(NumberedCircleView(text: "5"))]
                        
var body: some View {
    StepperView()
        .addSteps(steps)
        .indicators(indicationTypes)
        .stepIndicatorMode(StepperMode.horizontal)
        .spacing(50)
        .lineOptions(StepperLineOptions.custom(1, Colors.blue(.teal).rawValue))
}

视图修饰符

.addSteps(_ steps: [View]) : 
          1. list of views to be closer to indicator

.alignments(_ alignments: [StepperAlignment])
          1. optional modifier 
          2. defaults to .center, available with custom options either .top, .center, .bottom
          
.indicatorTypes(_ indicators:[StepperIndicationType]): 
          1. modifier to customize the step indications
          2. provides enum with cases .circle(color, width), .image(Image, width), .custom(AnyView), .animation(AnyView)
          
.lineOptions(_ options: StepperLineOptions): 
          1. line customization `Color` , `width`
          
.spacing(_ value: CGFloat): 
          1. spacing between each of the step views either vertically horizontally
          
.stepIndicatorMode(_ mode: StepperMode): 
          1. Step Indicator display modes either vertical, horizontal
          
.addPitStops(_ steps: [PitStopStep])
          1. optional modifier
          2. `PitStopStep` - structure that provides option to provide `View`, line customizations
          
.loadingAnimationTime(_ time: Double)
          1. controls the speed of the animation for step Indicator
          
.autoSpacing(true)
          1. Dynamcially calculates the spacing between each of the steps.

自定义步骤指示符

NumberedCircleView

此视图将数字或任何文本放置在圆圈内部。

NumberedCircleView(text: "1", width: 40)

圆形图标视图

此视图在圆形中嵌入图标或图像。

CircledIconView(image: Image("flag"), width: 40, strokeColor: Color.red)

更多示例

iOS 应用案例
watchOS 应用案例

StepperView_pistops StepperView_github_workflow StepperView_github_workflow

提及

SwiftUI 周刊 #5
iOS 精选 #333
MBLT 开发摘要 #302
优秀 iOS 快讯 #201
关于 SwiftUI 文章
更好的编程 Medium 文章

使用 StepperView 的应用

WatchTo5K

作者

Badarinath Venkatnarayansetty。您可以通过 TwitterLinkedIn 跟踪和联系我。

Buy Me A Coffee

贡献

欢迎提出功能请求、错误报告和拉取请求。更多详情请参考 贡献指南

许可证

StepperView在MIT许可证下可用。有关更多信息,请参阅许可证文件。