63 lines
1.5 KiB
Swift
63 lines
1.5 KiB
Swift
|
//
|
||
|
// CheckBoxButton.swift
|
||
|
// Befund
|
||
|
//
|
||
|
// Created by Artur Savitskiy on 05.08.22.
|
||
|
// Copyright © 2022 MVZ Dr. Stein und Kollegen. All rights reserved.
|
||
|
//
|
||
|
|
||
|
import UIKit
|
||
|
|
||
|
class CheckBoxButton: UIView {
|
||
|
|
||
|
var isChecked = false
|
||
|
|
||
|
let imageView: UIImageView = {
|
||
|
let imageView = UIImageView()
|
||
|
imageView.isHidden = true
|
||
|
imageView.contentMode = .scaleAspectFit
|
||
|
imageView.tintColor = UIColor(red: 153/255, green: 19/255, blue: 85/255, alpha: 1)
|
||
|
imageView.image = UIImage(systemName: "checkmark")
|
||
|
return imageView
|
||
|
}()
|
||
|
|
||
|
let boxView: UIView = {
|
||
|
let view = UIView()
|
||
|
view.layer.borderWidth = 1
|
||
|
view.layer.borderColor = UIColor.label.cgColor
|
||
|
return view
|
||
|
}()
|
||
|
|
||
|
override init(frame: CGRect) {
|
||
|
super.init(frame: frame)
|
||
|
backgroundColor = .clear
|
||
|
addSubview(boxView)
|
||
|
addSubview(imageView)
|
||
|
clipsToBounds = true
|
||
|
}
|
||
|
|
||
|
required init?(coder: NSCoder) {
|
||
|
fatalError()
|
||
|
}
|
||
|
|
||
|
override func layoutSubviews() {
|
||
|
super.layoutSubviews()
|
||
|
boxView.frame = CGRect(x: 5, y: 5, width: frame.size.width-10, height: frame.size.height-10)
|
||
|
imageView.frame = bounds
|
||
|
}
|
||
|
public func toogle()
|
||
|
{
|
||
|
self.isChecked = !isChecked
|
||
|
imageView.isHidden = !isChecked
|
||
|
}
|
||
|
public func IsChecked() -> Bool
|
||
|
{
|
||
|
return self.isChecked
|
||
|
}
|
||
|
public func setChecked(flag: Bool)
|
||
|
{
|
||
|
self.isChecked = flag
|
||
|
imageView.isHidden = !flag
|
||
|
}
|
||
|
}
|