ModernSlider

ModernSlider Image

Swift GitHub stars GitHub license Platform

ModernSlider 是一个可定制的 SwiftUI 滑块组件,其灵感来自 macOS 控制中心的滑块,它提供了一个时尚且现代的界面,用于从一个范围内选择值。

特性

要求

安装

Swift Package Manager

要将 ModernSlider 添加到您的项目中,请按照以下步骤操作

  1. 在 Xcode 中打开您的项目。
  2. 转到“File(文件)”>“Add Packages(添加包)”。
  3. 输入仓库 URL:https://github.com/arjun-dureja/ModernSlider
  4. 选择 ModernSlider 包并将其添加到您的项目中。

或者,将以下内容添加到您的 Package.swift 文件中

dependencies: [
    .package(url: "https://github.com/arjun-dureja/ModernSlider.git", from: "1.0.0")
]

用法

首先,在您的 SwiftUI 视图中导入 ModernSlider 包

import ModernSlider

然后,您可以在您的 SwiftUI 视图中使用 ModernSlider

struct ContentView: View {
    @State private var sliderValue = 50.0

    var body: some View {
        ModernSlider(
            "Brightness",
            systemImage: "sun.max.fill",
            value: $sliderValue,
            in: 5...100,
            onChange: { newValue in
                print("Slider value changed to \(newValue)")
            },
            onChangeEnd: { finalValue in
                print("Sliding ended with value \(finalValue)")
            }
        )
    }
}

自定义

ModernSlider 提供了各种自定义选项

自定义图像、宽度、高度和颜色

ModernSlider(
    "Volume",
    systemImage: "speaker.wave.2.fill",
    sliderWidth: 300,
    sliderHeight: 30,
    sliderColor: .blue,
    value: $volume
)

无标题

ModernSlider(
    systemImage: "circle",
    value: $value
)

API 参考

ModernSlider

public init(
    _ title: String? = nil,
    systemImage: String,
    sliderWidth: CGFloat = 250,
    sliderHeight: CGFloat = 25,
    sliderColor: Color = .white,
    value: Binding<Double>,
    in range: ClosedRange<Double> = 0...100,
    onChange: ((Double) -> Void)? = nil,
    onChangeEnd: ((Double) -> Void)? = nil
)

参数

贡献

欢迎贡献!请随时提交 Pull Request。

许可证

ModernSlider 在 MIT 许可证下可用。 有关更多信息,请参见 LICENSE 文件。