我想在UIPickerView中添加两个UIButtons(在它的底部)。请查看此图片中的取消和完成按钮:
这里我的代码上传: -
class DatePicker{
var containerView = UIView()
var datePicker = UIView()
var datePickerView = UIDatePicker()
var toolBar = UIToolbar()
internal class var shared: DatePicker {
struct Static {
static let instance: DatePicker = DatePicker()
}
return Static.instance
}
internal func showProgressView(view: UIView) {
containerView.frame = view.frame
containerView.center = view.center
containerView.backgroundColor = UIColor(hex: 0xffffff, alpha: 0.3)
datePickerView.datePickerMode = .Date
datePicker.frame = CGRectMake(0, 0, 250, 250)
datePicker.center = view.center
datePicker.backgroundColor = UIColor(hex: 0x444444, alpha: 0.7)
datePicker.clipsToBounds = true
datePicker.layer.cornerRadius = 10
datePickerView.setValue(UIColor.whiteColor(), forKeyPath: "textColor")
datePickerView.frame = CGRectMake(0, 0, 250, 250)
datePicker.addSubview(datePickerView)
containerView.addSubview(datePicker)
view.addSubview(containerView)
}
internal func hideProgressView() {
containerView.removeFromSuperview()
}
}
我如何获得UIToolbar和两个按钮?
答案 0 :(得分:0)
我建议使用工具栏和选择器视图制作.xib。在条上放置两个条形按钮,并在它们之间放置一个条形按钮垫片。
如果你在屏幕外启动它的帧并使用此功能在屏幕上移动它,你可以让它的动画看起来很棒。
UIView.animateWithDuration(0.5, delay: 0, usingSpringWithDamping: 0.8, initialSpringVelocity: 0, options: .CurveEaseInOut, animations: {
if viewToMove != nil {
viewToMove!.frame.origin.y/*orX*/ = onScreenPosition
} else {
"sidePanel == nil"
}
}, completion: completion)
如果你不想在动画中反弹,可以将CGRectMake(0, UIScreen.mainScreen().bounds.height, UIScreen.mainScreen().bounds.width, UIScreen.mainScreen().bounds.height/2)
然后移动线的视图将变为
viewToMove!.frame.origin.y = UIScreen.mainScreen().bounds.height/2
使用上一个功能将其带到屏幕上
viewToMove!.frame.origin.y = UIScreen.mainScreen().bounds.height
将其移出屏幕。您可以通过几种不同的方式访问xib的按钮,但我建议使用委托。
如果你不熟悉它们,我会熟悉,因为它们非常有用!如果您有任何疑问,请不要犹豫!