UPicker 1.2.0

UPicker 1.2.0

测试已测试
语言语言 SwiftSwift
许可 MIT
发布最新发布2019年3月
SPM支持 SPM

维护 4074.



UPicker 1.2.0

  • 作者
  • 4074

UPicker

一个使用 Swift 编写的选择器小部件。易于使用,如果需要可以自定义样式。

截图

screenshot

安装

CocoaPods

# for swift 4
pod "UPicker", '~>1.1.0'

# fot swift 3
pod "UPicker", '~>1.0.1'

# for swift 2.3
pod 'UPicker', '~>0.1.1'

手动

下载 UPicker.swiftUPickerView.swift,并将它们添加到您的项目中。

使用方法

简单

class ViewController: UIViewController {
    let picker: UPicker?
    let data = [["First", "Second", "Third"]]
    let selected = [0]
    // ...
    
    func showPicker() {
        if picker == nil {
            picker = UPicker(frame: view.frame, didDisappear: { selected in
                if rows != selected {
                    print("select \(rows[0])")
                }
            })
        }
        
        picker.pickerView.data = data
        picker.pickerView.selectedRows = selected
        picker?.present(self)
    }
}

多个数据

可以使用多个数据。

//...
picker.pickerView.data = [["First", "Second", "Third"], ["Fourth", "Fifth"]]
picker.pickerView.selectedRows = [0, 0]
//...

嵌套数据

此外,还提供了嵌套数据。

//...
picker.pickerView.data = [["Odd", "Even"]]
picker.pickerView.selectedRows = [0, 0]

// nested hierarchy
picker.pickerView.nestedHierarchy = 2
// nested data
picker.pickerView.nestedData = [
    "Odd": ["1", "3", "5", "7", "9"],
    "Even": ["2", "4", "6", "8"]
]

//...

自定义样式

UPickerUIViewController 的子类。你可以设置日期选择器显示时的自定义过渡效果。

UPicker.pickerView 是一个 UPickerView 实例,而 UPickerViewUIView 的子类。你可以通过其属性获取一些视图。

  • pickerView: UIPickerView
  • barView: UIView
  • doneButton: UIButton
  • blankView: UIView

因此,你可以对这些进行任何操作。

例如

// ...

// custom transition
picker.modalTransitionStyle = .FlipHorizontal

// custom button text
picker.pickerView.doneButton.setTitle("OK", forState: .Normal)

// custom picker view text color
picker.pickerView.textColor = UIColor.blueColor()

// ...