| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185 |
- //
- // SSAlarmHeader.swift
- // SolarStationSwift
- //
- // Created by weclouds on 2018/10/28.
- // Copyright © 2018 weclouds. All rights reserved.
- //
- import UIKit
- extension UIButton{
-
- func ss_setTitle(_ title :String,state:UIControlState){
- self.set(image: UIImage(named: "时间选择下拉"), title: title, titlePosition: .left, additionalSpacing: 15, state: state)
- }
-
- func setRight() {
- self.setImage(UIImage(named: "时间选择下拉"), for: .normal)
- self.titleEdgeInsets = UIEdgeInsetsMake(0, -((self.imageView?.size.width)!), 0, (self.imageView?.image?.size.width)!)
- self.imageEdgeInsets = UIEdgeInsetsMake(0, (self.titleLabel?.bounds.size.width)!, 0, -(self.titleLabel?.bounds.size.width)!)
- }
- }
- class SSAlarmHeader: UIView {
-
- var timeStr :String?{
- didSet{
- timeBtn.ss_setTitle(timeStr!, state: .normal)
- }
- }
-
- var typeStr :String?{
- didSet{
- typeBtn.ss_setTitle(typeStr!, state: .normal)
- }
- }
-
- var markerStr :String?{
- didSet{
- markerBtn.ss_setTitle(markerStr!, state: .normal)
- }
- }
-
- var deviceStr :String?{
- didSet{
- deviceBtn.ss_setTitle(deviceStr!, state: .normal)
- }
- }
-
- var callTime: (()->Void)?
- var callType : (()->Void)?
- var callMarker :(()->Void)?
- var callDevice : (()->Void)?
-
- lazy var timeBtn :UIButton = {
- let timeBtn = UIButton(type: .custom)
- timeBtn.ss_setTitle("时间", state: .normal)
- timeBtn.setTitleColor(UIColor.gray, for: .normal)
- timeBtn.titleLabel?.font = UIFont(name: KFontName, size: 13)
- timeBtn.addTarget(self, action: #selector(clickTime), for: .touchUpInside)
- return timeBtn
- }()
-
- lazy var typeBtn : UIButton = {
- let typeBtn = UIButton(type: .custom)
- typeBtn.ss_setTitle("类型", state: .normal)
- typeBtn.setTitleColor(UIColor.gray, for: .normal)
- typeBtn.titleLabel?.font = UIFont(name: KFontName, size: 13)
- typeBtn.addTarget(self, action: #selector(clickType), for: .touchUpInside)
- return typeBtn
- }()
-
- lazy var markerBtn: UIButton = {
- let markerBtn = UIButton(type: .custom)
- markerBtn.ss_setTitle("标注", state: .normal)
- markerBtn.setTitleColor(UIColor.gray, for: .normal)
- markerBtn.titleLabel?.font = UIFont(name: KFontName, size: 13)
- markerBtn.addTarget(self, action: #selector(clickMarker), for: .touchUpInside)
- return markerBtn
- }()
-
- lazy var deviceBtn: UIButton = {
- let deviceBtn = UIButton(type: .custom)
- deviceBtn.ss_setTitle("全部设备", state: .normal)
- deviceBtn.setTitleColor(UIColor.gray, for: .normal)
- deviceBtn.titleLabel?.font = UIFont(name: KFontName, size: 13)
- deviceBtn.addTarget(self, action: #selector(clickDevice), for: .touchUpInside)
- return deviceBtn
- }()
-
- override init(frame: CGRect) {
- super.init(frame: frame)
- createUI()
- }
-
- required init?(coder aDecoder: NSCoder) {
- fatalError("init(coder:) has not been implemented")
- }
-
- }
- extension SSAlarmHeader{
-
-
- //MARK : 创建UI
- func createUI() {
-
- //背景颜色
- backgroundColor = UIColor.white
-
- let space = ( KSCREENWIDTH - 3 ) / 4
- //分割线
- for i in 0..<3 {
- let lineView = UIView(frame: CGRect(x: space * CGFloat(i + 1), y: 10, width: 1, height: 29))
- lineView.backgroundColor = UIColor(hexString: "E8E8E8")
- addSubview(lineView)
- }
-
- //底部分割线
- let bottomLine = UIView()
- bottomLine.backgroundColor = UIColor(hexString: "E8E8E8")
- addSubview(bottomLine)
-
- bottomLine.snp.makeConstraints { (make) in
- make.leading.trailing.equalToSuperview()
- make.bottom.equalToSuperview()
- make.height.equalTo(1)
- }
-
- addSubview(timeBtn)
- addSubview(typeBtn)
- addSubview(markerBtn)
- addSubview(deviceBtn)
-
- timeBtn.snp.makeConstraints { (make) in
- make.leading.equalToSuperview().offset(6)
- make.top.bottom.equalToSuperview()
- make.width.equalTo((space - 12))
- }
-
- typeBtn.snp.makeConstraints { (make) in
- make.leading.equalToSuperview().offset(6 + space )
- make.top.bottom.equalToSuperview()
- make.width.equalTo((space - 12))
- }
-
- markerBtn.snp.makeConstraints { (make) in
- make.leading.equalToSuperview().offset(6 + 2 * space )
- make.top.bottom.equalToSuperview()
- make.width.equalTo((space - 12))
- }
-
- deviceBtn.snp.makeConstraints { (make) in
- make.leading.equalToSuperview().offset(6 + 3 * space)
- make.top.bottom.equalToSuperview()
- make.width.equalTo((space - 12))
- }
-
-
- }
-
- @objc func clickTime(_ sender:UIButton) {
- //sender.isSelected = !sender.isSelected
- log.debug("time")
- callTime!()
- }
-
- @objc func clickType(_ sender:UIButton) {
- // sender.isSelected = !sender.isSelected
- log.debug("type")
- callType!()
- }
-
- @objc func clickMarker(_ sender : UIButton) {
- //sender.isSelected = !sender.isSelected
- log.debug("marker")
- callMarker!()
- }
-
- @objc func clickDevice(_ sender:UIButton) {
- //sender.isSelected = !sender.isSelected
- log.debug("device")
- callDevice!()
- }
- }
|