IHSliderIndicatorView.swift 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. //
  2. // IHSliderIndicatorView.swift
  3. // Inhealth
  4. //
  5. // Created by weclouds on 2019/12/28.
  6. // Copyright © 2019 weclouds. All rights reserved.
  7. //
  8. import UIKit
  9. class IHSliderIndicatorView: UIView {
  10. var backColor :UIColor? = .white{
  11. didSet{
  12. self.layer.borderColor = self.backColor?.cgColor;
  13. self.layer.shadowColor = self.backColor?.cgColor;
  14. }
  15. }
  16. override init(frame: CGRect) {
  17. super.init(frame: frame)
  18. self.frame = CGRect(x: 0, y: 0, width: 12, height: 12)
  19. self.backgroundColor = UIColor.white;
  20. self.layer.shadowColor = UIColor.black.cgColor;
  21. //阴影
  22. self.layer.shadowOffset = .zero;
  23. self.layer.shadowOpacity = 0.7;
  24. self.layer.shadowRadius = 4; //半径
  25. self.layer.cornerRadius = self.frame.size.width / 2;
  26. self.layer.borderWidth = 2;
  27. }
  28. required init?(coder: NSCoder) {
  29. fatalError("init(coder:) has not been implemented")
  30. }
  31. func getImage() -> UIImage {
  32. //下边第一个参数表示区域大小,第二个参数表示非透明,如果需要半透明,需要传false,否则选true,第三个参数就是屏幕密度
  33. UIGraphicsBeginImageContextWithOptions(self.size, false, UIScreen.main.scale)
  34. let context = UIGraphicsGetCurrentContext()
  35. self.layer.render(in: context!)
  36. let image = UIGraphicsGetImageFromCurrentImageContext()
  37. UIGraphicsEndImageContext()
  38. return image!
  39. //2.5 + 1/5
  40. }
  41. }