1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- //
- // OOFormDateIntervalItemView.swift
- // o2app
- //
- // Created by 刘振兴 on 2018/1/26.
- // Copyright © 2018年 zone. All rights reserved.
- //
- import UIKit
- class OOFormDateIntervalItemView: OOFormBaseView,OOFormConfigEnable {
-
- @IBOutlet weak var showValueLabel: UILabel!
-
- @IBOutlet weak var titleNameLabel: UILabel!
-
- @IBOutlet weak var value1TextField: UITextField!
-
- @IBOutlet weak var value2TextField: UITextField!
-
- override func awakeFromNib() {
- showValueLabel.isHidden = true
- value1TextField.delegate = self
- value2TextField.delegate = self
- }
-
- override init(frame: CGRect) {
- super.init(frame: frame)
- }
-
- required init?(coder aDecoder: NSCoder) {
- super.init(coder: aDecoder)
- }
-
- func configItem(_ model: OOFormBaseModel) {
- self.model = model
- titleNameLabel.text = self.model?.titleName
- if self.model?.itemStatus! == .read {
- showValueLabel.isHidden = false
- showValueLabel.text = (self.model?.callbackValue ?? "") as? String
- value1TextField.isHidden = true
- value2TextField.isHidden = true
- }else{
- showValueLabel.isHidden = true
- //showValueLabel.text = (self.model?.callbackValue ?? "") as? String
- value1TextField.isHidden = false
- value2TextField.isHidden = false
- let uModel = self.model as? OOFormDateIntervalModel
- if let m = uModel {
- if let s = m.value1, let startTime = s as? Date {
- self.value1TextField.text = startTime.toString("HH时mm分")
- }
- if let e = m.value2, let endTime = e as? Date {
- self.value2TextField.text = endTime.toString("HH时mm分")
- }
- }
- }
- }
-
- }
- extension OOFormDateIntervalItemView:UITextFieldDelegate {
- func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
- UIApplication.shared.keyWindow?.endEditing(true)
- var date = Date()
- let uModel = self.model as? OOFormDateIntervalModel
- if self.value1TextField == textField {
- date = uModel?.value1 as? Date ?? Date()
- }else if self.value2TextField == textField {
- date = uModel?.value2 as? Date ?? Date()
- }
- self.showDatePicker(pickerStyle: .hourMinuteSecond, callBackResult: { (theDate) in
- let time = theDate.toString("HH时mm分")
- let uModel = self.model as? OOFormDateIntervalModel
- if self.value1TextField == textField {
- uModel?.value1 = theDate
- self.value1TextField.text = time
- }else if self.value2TextField == textField {
- uModel?.value2 = theDate
- self.value2TextField.text = time
- }
- }, defaultDate: date)
- return false
- }
- }
|