在 Swift 中以 iOS(UIKit)编写的简单而优雅的文本选取器

MFTextPicker

替代文本

这是一个用 Swift 编写的简单优雅的 iOS(UIKit)文本选择器。

特性

  • 调用和回传选择的简单方式。
  • 无需其他帮助器来显示/展示弹出窗口。
  • 无需大费周章地推送和展示视图控制器
  • 自定义轻松。

用法

启动应用程序时

在整个应用程序中,如果所有弹出窗口都看起来相同,则建议在 AppDelegate 的 didFinishLaunchingWithOptions 函数中或你的主页/登录视图控制器的 viewDidLoad 方法中设置以下值。

import MFTextPicker

@main
class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    
        MFTextPicker.shared.defaultColor = .white
        MFTextPicker.shared.defaultTintColor = .black

        /// Optional
        //MFTextPicker.shared.defaultHighlightColor = .systemBlue
        //MFTextPicker.shared.defaultSeparatorColor = .lightGray

        .....
    }

    .....
    .....
}
从任何地方展示

import MFTextPicker


@IBAction func showDesignation(){

    MFTextPicker.show(designations, title: "Select Designation", index: selectedIndex) { index, text in
        if let index {
            // hold the index to pass further picker show
            self.selectedIndex = index
        }
    }
}

自定义选择器

如果要在某些地方按预期设置颜色,请务必在调用 show() 函数前调用 config() 函数。

注意:选择器关闭后,应调用 reset() 函数。

import MFTextPicker


@IBAction func showDesignation(){

    let color = UIColor(red: 253.0/255.0, green: 243.0/255.0, blue: 208.0/255.0, alpha: 1.0)

    MFTextPicker.config(color: color, tintColor: .black, highlightColor: .systemRed)

    MFTextPicker.show(designations, title: "Select Designation", index: selectedIndex) { index, text in
        if let index {
            self.selectedIndex = index
        }
            
        MFTextPicker.shared.reset()
    }
}

有关更多示例,你可以克隆此代码库并查看示例应用程序。

安装

Swift 包管理器

将它添加到 Package.swift 中的 dependencies 值中:

dependencies: [
.package(url: "https://github.com/mamun344/MFTextPicker.git", from: "version-tag")
]

贡献

我们鼓励用户成为其持续发展中的积极贡献者——解决他们遇到的任何错误,或在发现文档不足时对其进行改进。

如果你想做出改变,创建一个 Pull Request——即使它只包含你计划更改的草稿,或者是一个重现问题所在测试——我们可以在此基础上进一步讨论。

GitHub

点击跳转