123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- //
- // IHGuestInfoView.swift
- // Inhealth
- //
- // Created by weclouds on 2020/2/7.
- // Copyright © 2020 weclouds. All rights reserved.
- //
- import UIKit
- let kNotifactionIHGuestInfoUploadImageFinished = "kNotifactionIHGuestInfoUploadImageFinished"
- let kIHwGuestInfoNotificationGetDeviceImage = "kIHGuestInfoNotificationGetDeviceImage"
- protocol IHGuestInfoViewDelegate : NSObjectProtocol{
- func selectedHotel(hotelId:String)
- func goToselectedRoomNumber(_ hotelId:String?)
- //注册信息确认
- func guestInfoConfirm(_ name:String,age:String)
- func goToPickerAvatar()
- }
- class IHGuestInfoView: UIView {
-
- var hotellist:[DropDownData]?{
- didSet{
- let hotel = self.hotellist?.first
- if let hotel = hotel {
- hotelLabel.text = hotel.name
- hotelId = hotel.id
- }
- }
- }
- var roomNumber :String?{
- didSet{
- if self.roomNumber == nil {
- self.roomNumberLabel.textColor = UIColor(hexString: "#C6CDD5")
- self.roomNumberLabel.text = "年级-班级号"
- }else{
- self.roomNumberLabel.textColor = UIColor(hexString: "#333333")
- self.roomNumberLabel.text = self.roomNumber
- }
- }
- }
- var hotelId :String?{
- didSet{
-
- }
- }
-
- weak var delegate:IHGuestInfoViewDelegate?
-
- @IBOutlet weak var roomNumberLabel: UILabel!
- @IBOutlet weak var ageSilder: UIView!
- @IBOutlet weak var hotelLabel: UILabel!
-
- @IBOutlet weak var ageLabel: UILabel!
-
- @IBOutlet weak var nameTf: UITextField!
-
- @IBOutlet weak var avtarIcon :UIImageView!
- @IBOutlet weak var uploadImage :UIImageView!
- var imagePath :String?
- override func awakeFromNib() {
- super.awakeFromNib()
- NotificationCenter.default.addObserver(self, selector: #selector(notifyDeviceIcon(_:)), name: NSNotification.Name(kIHwGuestInfoNotificationGetDeviceImage), object: nil)
- NotificationCenter.default.addObserver(self, selector: #selector(notifyImagePath), name: NSNotification.Name(kNotifactionIHGuestInfoUploadImageFinished), object: nil)
- createUI()
- }
- //通知改变头像
- @objc func notifyDeviceIcon(_ notif:Notification) {
- let image = notif.object as! UIImage
- self.avtarIcon.image = image
-
- }
- //通知改变imagePath
- @objc func notifyImagePath(_ notif:Notification) {
- let path = notif.object as! String
- //isPickImageFinished = true
- self.imagePath = path
- }
-
- deinit {
- NotificationCenter.default.removeObserver(self)
- }
- override func layoutSubviews() {
- super.layoutSubviews()
- //xib的frame需要在layoutsubViews中设置 不然有问题
- frame = CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: 812)
- }
- override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
- self.endEditing(true)
- }
- //确定按钮 事件
- @IBAction func confirmAction(_ sender: Any) {
- log.debug("确定")
- if nameTf.text == "" {
- g_showHUD("请输入您的名称")
- return
- }
- AppShare.register_age = ageLabel.text!
- AppShare.register_name = nameTf.text!
- if let delegate = self.delegate {
- delegate.guestInfoConfirm(nameTf.text!, age: ageLabel.text!)
- }
- }
- //选择楼房
- @IBAction func selectedHotel(_ sender: Any) {
- self.roomNumberLabel.textColor = UIColor(hexString: "#C6CDD5")
- roomNumberLabel.text = "年级-班级号"
-
-
- var titleArr = [String]()
- if let hotelList = self.hotellist {
- for hotel in hotelList {
- titleArr.append(hotel.name!)
- }
- }
- let pick = THScrollChooseView(question: titleArr, withDefaultDesc: titleArr.first)
- pick?.confirmBlock = {(selectedIndex) in
- log.debug(" title = \(titleArr[selectedIndex])")
- self.hotelLabel.text = titleArr[selectedIndex]
- if let hotelList = self.hotellist {
-
- //for hotel in hotelList {
- let hotel = hotelList[selectedIndex]
- log.debug("选择的hotelid - \(hotel.id!)")
- self.hotelId = hotel.id!
- if let delegate = self.delegate {
- delegate.selectedHotel(hotelId: hotel.id!)
- }
- // }
- }
- }
- pick?.show()
-
- }
- }
- extension IHGuestInfoView{
-
- func createUI() {
-
- let slider = CLSliderView(frame: CGRect.init(x: 0, y: 0, width: KSCREENWIDTH - 50 , height: ageSilder.frame.height))
- slider.thumbImage = UIImage(named: "ageSlider")
- ageSilder.addSubview(slider)
- slider.valueChange = {(value) in
- // print("value = \(value)")
- let age = 100 * value
- self.ageLabel.text = String(format: "%.0f", age)
-
- }
-
- roomNumberLabel.isUserInteractionEnabled = true
- let tap = UITapGestureRecognizer(target: self, action: #selector(selectedRoomNumber))
- roomNumberLabel.addGestureRecognizer(tap)
-
- avtarIcon.isUserInteractionEnabled = true
- uploadImage.isUserInteractionEnabled = true
- let tap1 = UITapGestureRecognizer(target:self,action:#selector(pickerImage))
- let tap2 = UITapGestureRecognizer(target:self,action:#selector(pickerImage))
- avtarIcon.addGestureRecognizer(tap1)
- uploadImage.addGestureRecognizer(tap2)
- }
-
- @objc func pickerImage() {
- if let delegate = delegate {
- delegate.goToPickerAvatar()
- }
- }
- @objc func selectedRoomNumber() {
- log.debug("选择房间号")
- if let delegate = delegate {
- delegate.goToselectedRoomNumber(self.hotelId)
- }
-
- }
-
-
- }
- extension IHGuestInfoView: WXHCodeViewDelegate{
- func codeView(_ codeView: WXHCodeView!, fullText: String!) {
- codeView.resignFirstResponder()
- log.debug("输入完成,当前输入为 : \(fullText)")
- }
- }
|