Files
yingmeng-ios-switf/yinmeng-ios/Modules/Auth/View/AuthPrivacyView.swift
2024-02-29 01:07:15 +08:00

126 lines
4.1 KiB
Swift
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// AuthPrivacyView.swift
// yinmeng-ios
//
// Created by MaiMang on 2024/2/22.
//
import UIKit
let AuthPrivacyShowKey = "AuthPrivacyShowKey"
class AuthPrivacyView: BaseView {
override func loadSubViews() {
backgroundColor = ThemeColor(hexStr: "#000000", alpha: 0.4)
addSubview(effectView)
addSubview(contentView)
contentView.addSubview(titleLb)
contentView.addSubview(textView)
contentView.addSubview(agreeBtn)
contentView.addSubview(rejectBtn)
effectView.snp.makeConstraints { make in
make.edges.equalTo(contentView)
}
contentView.snp.makeConstraints { make in
make.size.equalTo(CGSize(width: 335, height: 490))
make.centerX.equalTo(self)
make.centerY.equalTo(self)
}
titleLb.snp.makeConstraints { make in
make.centerX.equalTo(contentView)
make.top.equalTo(contentView).offset(18)
}
textView.snp.makeConstraints { make in
make.left.right.equalTo(contentView).inset(20)
make.top.equalTo(contentView).offset(52)
make.bottom.equalTo(contentView).offset(-132)
}
agreeBtn.snp.makeConstraints { make in
make.left.right.equalTo(contentView).inset(32)
make.height.equalTo(46)
make.bottom.equalTo(rejectBtn.snp.top).offset(-20)
}
rejectBtn.snp.makeConstraints { make in
make.centerX.equalTo(contentView)
make.height.equalTo(22)
make.bottom.equalTo(contentView).offset(-20)
}
}
private lazy var effectView: UIVisualEffectView = {
let blurEffect = UIBlurEffect(style: .light)
let blurView = UIVisualEffectView(effect: blurEffect)
blurView.layer.masksToBounds = true
blurView.layer.cornerRadius = 16
return blurView
}()
private lazy var contentView: UIView = {
let view = UIView()
view.backgroundColor = ThemeColor(hexStr: "#525566", alpha: 0.8)
view.layer.masksToBounds = true
view.layer.cornerRadius = 16
return view
}()
private lazy var titleLb: UILabel = {
let label = UILabel()
label.textColor = .white
label.font = UIFont.systemFont(ofSize: 16)
label.textAlignment = .center
label.text = "用户隐私保护指引"
return label
}()
private lazy var textView: UITextView = {
let view = UITextView()
view.backgroundColor = .clear
view.font = UIFont.systemFont(ofSize: 14)
view.text = "欢迎使用音萌:\n\n 我们十分重视用户的隐私和个人信息保护。你在使用我们的产品或服务时,为了更好提供服务,我们可能会搜集和使用你的相关信息;\n\n1、你在我们平台上注册账户或使用软件服务时将需要你授权和提供与使用服务相关的个人信息包括联系方式、日志等敏感信息和设备信息包括Mac地址、EMID/IMEI、软件安装列表等信息\n\n2、未经你同意我们不会将你的信息出租、出售给第三方或用于你未授权的其他用途;\n\n3、你可以对上述信息进行访问、更正、删除及撤回同意等。"
return view
}()
private lazy var agreeBtn: UIButton = {
let button = UIButton(type: .custom)
button.setBackgroundImage(UIImage.gradient([ThemeColor(hexStr: "#FF60FD"), ThemeColor(hexStr: "#8974FF"), ThemeColor(hexStr: "#69EBFF")], radius: 0), for: .normal)
button.setTitle("同意并继续", for: .normal)
button.setTitleColor(.white, for: .normal)
button.titleLabel?.font = UIFont.systemFont(ofSize: 16, weight: .medium)
button.layer.masksToBounds = true
button.layer.cornerRadius = 23
button.addTarget(self, action: #selector(agreeClick), for: .touchUpInside)
return button
}()
private lazy var rejectBtn: UIButton = {
let button = UIButton(type: .custom)
button.setTitle("拒绝", for: .normal)
button.setTitleColor(.white, for: .normal)
button.titleLabel?.font = UIFont.systemFont(ofSize: 16, weight: .medium)
button.addTarget(self, action: #selector(rejectClick), for: .touchUpInside)
return button
}()
@objc func agreeClick() {
UIView.animate(withDuration: 0.5) {
self.isHidden = true
} completion: { com in
self.removeFromSuperview()
}
UserDefaults.standard.set(true, forKey: AuthPrivacyShowKey)
UserDefaults.standard.synchronize()
}
@objc func rejectClick() {
UIView.animate(withDuration: 0.3) {
exit(0)
}
}
}