| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- //
- // QSLConst.swift
- // QuickSearchLocation
- //
- // Created by mac on 2024/4/10.
- //
- import Foundation
- import UIKit
- struct QSLConst {
-
- // MARK: 1.1、是否是缺口屏幕(刘海屏)或者灵动岛的屏幕
- // 是否是缺口屏幕(刘海屏)或者灵动岛的屏幕
- static var qsl_isIPhoneNotch: Bool {
- if #available(iOS 11.0, *) {
- if let window = UIApplication.keyWindow {
- return window.safeAreaInsets.bottom > 0
- } else {
- return false
- }
- } else {
- return UIApplication.shared.statusBarFrame.height > 20
- }
- }
- // MARK: 2.1、屏幕的宽
- /// 屏幕的宽
- static var qsl_kScreenW: CGFloat { return UIScreen.main.bounds.width }
- // MARK: 2.2、屏幕的高
- /// 屏幕的高
- static var qsl_kScreenH: CGFloat { return UIScreen.main.bounds.height }
-
- // MARK: 2.3、获取statusBar的高度
- /// 获取statusBar的高度
- static var qsl_kStatusBarFrameH: CGFloat {
- if #available(iOS 13.0, *) {
- let window: UIWindow? = UIApplication.shared.windows.first
- let statusBarHeight = (window?.windowScene?.statusBarManager?.statusBarFrame.height) ?? 0
- return statusBarHeight
- } else {
- // 防止界面没有出来获取为0的情况
- return UIApplication.shared.statusBarFrame.height > 0 ? UIApplication.shared.statusBarFrame.height : 44
- }
- }
- // MARK: 2.4、获取导航栏的高度
- /// 获取导航栏的高度
- static var qsl_kNavFrameH: CGFloat { return 44 + qsl_kStatusBarFrameH }
-
- // MARK: 2.5、屏幕底部Tabbar高度
- /// 屏幕底部Tabbar高度
- static var qsl_kTabbarFrameH: CGFloat { return QSLConst.qsl_isIPhoneNotch ? 83 : 49 }
- // MARK: 2.6、屏幕底部刘海高度
- /// 屏幕底部刘海高度
- static var qsl_kTabbarBottom: CGFloat { return QSLConst.qsl_isIPhoneNotch ? 34 : 0 }
- // MARK: 2.7、屏幕比例
- /// 屏幕比例
- static var qsl_kPixel: CGFloat { return 1.0 / UIScreen.main.scale }
-
- static var qsl_kScale: CGFloat { return QSLConst.qsl_kScreenW / CGFloat(375.0) }
- }
|