Commit 669e1673 authored by Steven杜宇's avatar Steven杜宇

// 版本更新UI

parent 5a53f149
...@@ -33,6 +33,8 @@ ...@@ -33,6 +33,8 @@
044414012BC3979800784A14 /* YHServerHKLifeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044414002BC3979800784A14 /* YHServerHKLifeViewController.swift */; }; 044414012BC3979800784A14 /* YHServerHKLifeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044414002BC3979800784A14 /* YHServerHKLifeViewController.swift */; };
044414032BC39B8D00784A14 /* YHServerTableHeadView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044414022BC39B8D00784A14 /* YHServerTableHeadView.swift */; }; 044414032BC39B8D00784A14 /* YHServerTableHeadView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044414022BC39B8D00784A14 /* YHServerTableHeadView.swift */; };
044414052BC3B9DE00784A14 /* YHServiceTableFootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044414042BC3B9DE00784A14 /* YHServiceTableFootView.swift */; }; 044414052BC3B9DE00784A14 /* YHServiceTableFootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044414042BC3B9DE00784A14 /* YHServiceTableFootView.swift */; };
0445E6AF2BE9CFF6003C52F9 /* YHAppVersionUpdateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0445E6AE2BE9CFF6003C52F9 /* YHAppVersionUpdateView.swift */; };
0445E6B12BE9E15C003C52F9 /* YHFindAppNewVersionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0445E6B02BE9E15C003C52F9 /* YHFindAppNewVersionView.swift */; };
044867B42BA1953B00DFAD4A /* YHCertificateFilterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044867B32BA1953B00DFAD4A /* YHCertificateFilterView.swift */; }; 044867B42BA1953B00DFAD4A /* YHCertificateFilterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044867B32BA1953B00DFAD4A /* YHCertificateFilterView.swift */; };
044867B62BA1A03800DFAD4A /* YHCertificateFilterItemCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044867B52BA1A03800DFAD4A /* YHCertificateFilterItemCell.swift */; }; 044867B62BA1A03800DFAD4A /* YHCertificateFilterItemCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044867B52BA1A03800DFAD4A /* YHCertificateFilterItemCell.swift */; };
044867B82BA1C75700DFAD4A /* YHCertificateUploadFailTipsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044867B72BA1C75700DFAD4A /* YHCertificateUploadFailTipsView.swift */; }; 044867B82BA1C75700DFAD4A /* YHCertificateUploadFailTipsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044867B72BA1C75700DFAD4A /* YHCertificateUploadFailTipsView.swift */; };
...@@ -483,6 +485,8 @@ ...@@ -483,6 +485,8 @@
044414002BC3979800784A14 /* YHServerHKLifeViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHServerHKLifeViewController.swift; sourceTree = "<group>"; }; 044414002BC3979800784A14 /* YHServerHKLifeViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHServerHKLifeViewController.swift; sourceTree = "<group>"; };
044414022BC39B8D00784A14 /* YHServerTableHeadView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHServerTableHeadView.swift; sourceTree = "<group>"; }; 044414022BC39B8D00784A14 /* YHServerTableHeadView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHServerTableHeadView.swift; sourceTree = "<group>"; };
044414042BC3B9DE00784A14 /* YHServiceTableFootView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHServiceTableFootView.swift; sourceTree = "<group>"; }; 044414042BC3B9DE00784A14 /* YHServiceTableFootView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHServiceTableFootView.swift; sourceTree = "<group>"; };
0445E6AE2BE9CFF6003C52F9 /* YHAppVersionUpdateView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHAppVersionUpdateView.swift; sourceTree = "<group>"; };
0445E6B02BE9E15C003C52F9 /* YHFindAppNewVersionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHFindAppNewVersionView.swift; sourceTree = "<group>"; };
044867B32BA1953B00DFAD4A /* YHCertificateFilterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateFilterView.swift; sourceTree = "<group>"; }; 044867B32BA1953B00DFAD4A /* YHCertificateFilterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateFilterView.swift; sourceTree = "<group>"; };
044867B52BA1A03800DFAD4A /* YHCertificateFilterItemCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateFilterItemCell.swift; sourceTree = "<group>"; }; 044867B52BA1A03800DFAD4A /* YHCertificateFilterItemCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateFilterItemCell.swift; sourceTree = "<group>"; };
044867B72BA1C75700DFAD4A /* YHCertificateUploadFailTipsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateUploadFailTipsView.swift; sourceTree = "<group>"; }; 044867B72BA1C75700DFAD4A /* YHCertificateUploadFailTipsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateUploadFailTipsView.swift; sourceTree = "<group>"; };
...@@ -1021,6 +1025,23 @@ ...@@ -1021,6 +1025,23 @@
path = "FormalBatch(正式批)"; path = "FormalBatch(正式批)";
sourceTree = "<group>"; sourceTree = "<group>";
}; };
0445E6AC2BE9CF53003C52F9 /* VersionUpload(版本更新) */ = {
isa = PBXGroup;
children = (
0445E6AD2BE9CF95003C52F9 /* V */,
);
path = "VersionUpload(版本更新)";
sourceTree = "<group>";
};
0445E6AD2BE9CF95003C52F9 /* V */ = {
isa = PBXGroup;
children = (
0445E6AE2BE9CFF6003C52F9 /* YHAppVersionUpdateView.swift */,
0445E6B02BE9E15C003C52F9 /* YHFindAppNewVersionView.swift */,
);
path = V;
sourceTree = "<group>";
};
045EED972B9F171A0022A143 /* ServiceProcess(我的信息流程) */ = { 045EED972B9F171A0022A143 /* ServiceProcess(我的信息流程) */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
...@@ -2253,6 +2274,7 @@ ...@@ -2253,6 +2274,7 @@
A5ACE91B2B4564F7002C94D2 /* Modules */ = { A5ACE91B2B4564F7002C94D2 /* Modules */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
0445E6AC2BE9CF53003C52F9 /* VersionUpload(版本更新) */,
A567E5662BD7643D00D5D5A0 /* Home(首页) */, A567E5662BD7643D00D5D5A0 /* Home(首页) */,
04174D652BCD5B74000BA46D /* Message(消息) */, 04174D652BCD5B74000BA46D /* Message(消息) */,
A5ACE8D82B4564F7002C94D2 /* Login(登录) */, A5ACE8D82B4564F7002C94D2 /* Login(登录) */,
...@@ -2733,6 +2755,7 @@ ...@@ -2733,6 +2755,7 @@
0480976B2BA15269000B9DCA /* YHCertificateInfoCell.swift in Sources */, 0480976B2BA15269000B9DCA /* YHCertificateInfoCell.swift in Sources */,
A56D2D612B62020C009C83A8 /* YHContractMainItemStatusCell.swift in Sources */, A56D2D612B62020C009C83A8 /* YHContractMainItemStatusCell.swift in Sources */,
045EEECF2B9F171A0022A143 /* YHScoreOptionsView.swift in Sources */, 045EEECF2B9F171A0022A143 /* YHScoreOptionsView.swift in Sources */,
0445E6AF2BE9CFF6003C52F9 /* YHAppVersionUpdateView.swift in Sources */,
045EEEC12B9F171A0022A143 /* YHOtherInfoFillModel.swift in Sources */, 045EEEC12B9F171A0022A143 /* YHOtherInfoFillModel.swift in Sources */,
0468D43A2B579EAC00CFB916 /* YHLoginViewModel.swift in Sources */, 0468D43A2B579EAC00CFB916 /* YHLoginViewModel.swift in Sources */,
045EEE9E2B9F171A0022A143 /* YHWorkExampleModel.swift in Sources */, 045EEE9E2B9F171A0022A143 /* YHWorkExampleModel.swift in Sources */,
...@@ -2801,6 +2824,7 @@ ...@@ -2801,6 +2824,7 @@
0435FA7F2BA178C100024EAE /* YHCommonAlertView.swift in Sources */, 0435FA7F2BA178C100024EAE /* YHCommonAlertView.swift in Sources */,
A5ACE9382B4564F7002C94D2 /* UIApplication+Extension.swift in Sources */, A5ACE9382B4564F7002C94D2 /* UIApplication+Extension.swift in Sources */,
0468D42B2B55019900CFB916 /* YHAnalytics.swift in Sources */, 0468D42B2B55019900CFB916 /* YHAnalytics.swift in Sources */,
0445E6B12BE9E15C003C52F9 /* YHFindAppNewVersionView.swift in Sources */,
045EEEBE2B9F171A0022A143 /* YHResultBottomView.swift in Sources */, 045EEEBE2B9F171A0022A143 /* YHResultBottomView.swift in Sources */,
045EEEEB2B9F171A0022A143 /* YHTest.swift in Sources */, 045EEEEB2B9F171A0022A143 /* YHTest.swift in Sources */,
045EEEAC2B9F171A0022A143 /* YHWorkExperienceTableViewCell.swift in Sources */, 045EEEAC2B9F171A0022A143 /* YHWorkExperienceTableViewCell.swift in Sources */,
......
...@@ -21,6 +21,8 @@ class YHLoginManager: NSObject { ...@@ -21,6 +21,8 @@ class YHLoginManager: NSObject {
private override init() {} private override init() {}
var needJumpToMsgTabFlag : Bool = false var needJumpToMsgTabFlag : Bool = false
// 是否展示了版本更新
var isShowVersionUpdate:Bool = false
} }
extension YHLoginManager { extension YHLoginManager {
......
//
// YHAppVersionUpdateView.swift
// galaxy
//
// Created by edy on 2024/5/7.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
// 【Usage】
/*
YHAppVersionUpdateView.alertView().show()
*/
import UIKit
class YHAppVersionUpdateView: UIView {
// 底层蒙版
lazy var blackMaskView: UIView = {
let view = UIView()
view.backgroundColor = .alertMaskColor
// let tap = UITapGestureRecognizer(target: self, action: #selector(dismiss))
// view.addGestureRecognizer(tap)
return view
}()
lazy var whiteContentView: UIView = {
let view = UIView()
view.backgroundColor = .white
view.layer.cornerRadius = 6.0
return view
}()
lazy var titleLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.textAlignment = .center
label.font = UIFont.PFSC_B(ofSize:17)
label.text = "版本更新"
return label
}()
lazy var lineView: UIView = {
let view = UIView()
view.backgroundColor = .separatorColor
return view
}()
lazy var detailLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.textAlignment = .center
label.numberOfLines = 0
label.font = UIFont.PFSC_R(ofSize:16)
label.text = "当前APP版本过低,为保证正常使用,请进行更新"
return label
}()
lazy var updateBtn:UIButton = {
let btn = UIButton()
btn.setTitle("更新".local, for: .normal)
btn.titleLabel?.font = UIFont.PFSC_R(ofSize: 14)
btn.setTitleColor(.white, for: .normal)
btn.backgroundColor = UIColor.brandMainColor
btn.layer.cornerRadius = 3.0
btn.addTarget(self, action: #selector(didClickUpdateBtn), for: .touchUpInside)
return btn
}()
lazy var exitBtn:UIButton = {
let btn = UIButton()
btn.setTitle("退出APP", for: .normal)
btn.titleLabel?.font = UIFont.PFSC_R(ofSize: 14)
btn.setTitleColor(UIColor.brandMainColor, for: .normal)
btn.layer.borderWidth = 1.0
btn.layer.borderColor = UIColor.brandMainColor.cgColor
btn.backgroundColor = .white
btn.layer.cornerRadius = 3.0
btn.addTarget(self, action: #selector(didClickExitBtn), for: .touchUpInside)
return btn
}()
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(frame: CGRect) {
super.init(frame: frame)
createUI()
}
static func alertView() -> YHAppVersionUpdateView {
let alertView = YHAppVersionUpdateView(frame:UIScreen.main.bounds)
return alertView
}
func createUI() {
self.addSubview(blackMaskView)
self.addSubview(whiteContentView)
whiteContentView.addSubview(titleLabel)
whiteContentView.addSubview(lineView)
whiteContentView.addSubview(detailLabel)
whiteContentView.addSubview(exitBtn)
whiteContentView.addSubview(updateBtn)
blackMaskView.snp.makeConstraints { make in
make.edges.equalToSuperview()
}
whiteContentView.snp.makeConstraints { make in
make.left.equalTo(38)
make.right.equalTo(-38)
make.centerX.equalToSuperview()
make.centerY.equalToSuperview()
}
titleLabel.snp.makeConstraints { make in
make.top.equalTo(15)
make.left.equalTo(21)
make.right.equalTo(-21)
make.height.equalTo(24)
}
lineView.snp.makeConstraints { make in
make.left.right.equalTo(0)
make.top.equalTo(titleLabel.snp.bottom).offset(12)
make.height.equalTo(0.5)
}
detailLabel.snp.makeConstraints { make in
make.left.equalTo(21)
make.right.equalTo(-21)
make.top.equalTo(lineView.snp.bottom).offset(21)
}
exitBtn.snp.makeConstraints { make in
make.top.equalTo(detailLabel.snp.bottom).offset(29)
make.left.equalTo(16)
make.right.equalTo(updateBtn.snp.left).offset(-10)
make.height.equalTo(45)
make.width.equalTo(updateBtn)
make.bottom.equalTo(-16)
}
updateBtn.snp.makeConstraints { make in
make.top.bottom.height.equalTo(exitBtn)
make.right.equalTo(-16)
}
}
@objc func show() {
if YHLoginManager.shared.isShowVersionUpdate == false {
YHLoginManager.shared.isShowVersionUpdate = true
UIApplication.shared.yhKeyWindow()?.addSubview(self)
}
}
@objc func dismiss() {
YHLoginManager.shared.isShowVersionUpdate = false
self.removeFromSuperview()
}
@objc func didClickUpdateBtn() {
}
@objc func didClickExitBtn() {
}
}
//
// YHFindAppNewVersionView.swift
// galaxy
//
// Created by edy on 2024/5/7.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
//
/* 【Usage】
YHFindAppNewVersionView.alertView().show()
view.updateContentArray(["1、阿斯顿发发。 2、阿打发打发是的发生富士达"])
*/
import UIKit
class YHUpdateContentItemView: UIView {
lazy var pointView: UIView = {
let view = UIView()
view.backgroundColor = UIColor.brandMainColor
view.layer.cornerRadius = 2.0
return view
}()
lazy var contentLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.numberOfLines = 0
label.font = UIFont.PFSC_R(ofSize:14)
return label
}()
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(frame: CGRect) {
super.init(frame: frame)
createUI()
}
func createUI() {
self.addSubview(pointView)
self.addSubview(contentLabel)
pointView.snp.makeConstraints { make in
make.width.height.equalTo(4)
make.left.equalToSuperview()
make.top.equalTo(8)
}
contentLabel.snp.makeConstraints { make in
make.left.equalTo(pointView.snp.right).offset(10)
make.top.right.equalToSuperview()
make.height.greaterThanOrEqualTo(20)
make.bottom.equalTo(0)
}
}
}
class YHFindAppNewVersionView: UIView {
// 底层蒙版
lazy var blackMaskView: UIView = {
let view = UIView()
view.backgroundColor = .alertMaskColor
let tap = UITapGestureRecognizer(target: self, action: #selector(dismiss))
view.addGestureRecognizer(tap)
return view
}()
lazy var whiteContentView: UIView = {
let view = UIView()
view.backgroundColor = .white
view.layer.cornerRadius = 6.0
return view
}()
lazy var headImgView: UIImageView = {
let imgView = UIImageView(image: UIImage(named: "app_version_update_bg"))
return imgView
}()
lazy var titleLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.init(hex: 0x121A26)
label.font = UIFont.PFSC_B(ofSize:20)
label.text = "发现新版本"
return label
}()
lazy var versionLabel: UILabel = {
let label = UILabel()
label.text = "V0.0.0"
label.textColor = UIColor.brandMainColor
label.textAlignment = .center
label.font = UIFont.PFSC_R(ofSize:14)
label.layer.cornerRadius = 3.0
label.layer.borderWidth = 0.5
label.layer.borderColor = UIColor.init(hex: 0x0046B5, alpha: 0.5).cgColor
return label
}()
lazy var updateTitleLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.font = UIFont.PFSC_B(ofSize:16)
label.text = "版本更新内容:"
return label
}()
lazy var scrollView: UIScrollView = {
let view = UIScrollView()
view.showsVerticalScrollIndicator = false
view.addSubview(updateContentView)
return view
}()
lazy var updateContentView: UIView = {
let view = UIView()
return view
}()
lazy var updateBtn:UIButton = {
let btn = UIButton()
btn.setTitle("立即更新".local, for: .normal)
btn.titleLabel?.font = UIFont.PFSC_R(ofSize: 14)
btn.setTitleColor(.white, for: .normal)
btn.backgroundColor = UIColor.brandMainColor
btn.layer.cornerRadius = 3.0
btn.addTarget(self, action: #selector(didClickUpdateBtn), for: .touchUpInside)
return btn
}()
lazy var closeBtn:UIButton = {
let btn = UIButton()
btn.setImage(UIImage(named: "update_close"), for: .normal)
btn.addTarget(self, action: #selector(dismiss), for: .touchUpInside)
return btn
}()
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(frame: CGRect) {
super.init(frame: frame)
createUI()
}
static func alertView() -> YHFindAppNewVersionView {
let alertView = YHFindAppNewVersionView(frame:UIScreen.main.bounds)
return alertView
}
func updateContentArray(_ arr: [String]) {
updateContentView.removeSubviews()
updateContentView.snp.remakeConstraints { make in
make.edges.equalToSuperview()
make.width.equalToSuperview()
}
var lastItemView:YHUpdateContentItemView? = nil
for (index, text) in arr.enumerated() {
let targetView = YHUpdateContentItemView(frame: .zero)
targetView.contentLabel.text = text
updateContentView.addSubview(targetView)
targetView.snp.makeConstraints { make in
make.left.right.equalToSuperview()
if let lastItemView = lastItemView {
make.top.equalTo(lastItemView.snp.bottom).offset(8)
} else {
make.top.equalToSuperview()
}
if index == arr.count-1 {
make.bottom.equalToSuperview()
}
}
lastItemView = targetView
}
self.setNeedsLayout()
self.layoutIfNeeded()
}
func createUI() {
self.addSubview(blackMaskView)
self.addSubview(whiteContentView)
self.addSubview(closeBtn)
whiteContentView.addSubview(headImgView)
whiteContentView.addSubview(titleLabel)
whiteContentView.addSubview(versionLabel)
whiteContentView.addSubview(updateTitleLabel)
whiteContentView.addSubview(scrollView)
whiteContentView.addSubview(updateBtn)
blackMaskView.snp.makeConstraints { make in
make.edges.equalToSuperview()
}
whiteContentView.snp.makeConstraints { make in
make.left.equalTo(38)
make.right.equalTo(-38)
make.centerX.equalToSuperview()
make.centerY.equalToSuperview()
}
headImgView.snp.makeConstraints { make in
make.left.right.top.equalToSuperview()
make.height.equalTo(headImgView.snp.width).multipliedBy(5.0/12.0)
}
titleLabel.snp.makeConstraints { make in
make.left.equalTo(28)
make.right.equalTo(-28)
make.top.equalTo(23)
make.height.equalTo(28)
}
versionLabel.snp.makeConstraints { make in
make.left.equalTo(titleLabel)
make.top.equalTo(titleLabel.snp.bottom).offset(6)
make.width.equalTo(54)
make.height.equalTo(22)
}
updateTitleLabel.snp.makeConstraints { make in
make.left.equalTo(21)
make.right.equalTo(-21)
make.top.equalTo(headImgView.snp.bottom).offset(16)
make.height.equalTo(22)
}
scrollView.snp.makeConstraints { make in
make.height.equalTo(128)
make.left.equalTo(21)
make.right.equalTo(-21)
make.top.equalTo(updateTitleLabel.snp.bottom).offset(8)
make.bottom.equalTo(updateBtn.snp.top).offset(-16)
}
updateContentView.snp.makeConstraints { make in
make.edges.equalToSuperview()
make.width.equalToSuperview()
}
updateBtn.snp.makeConstraints { make in
make.left.equalTo(21)
make.right.equalTo(-21)
make.height.equalTo(45)
make.bottom.equalTo(-16)
}
closeBtn.snp.makeConstraints { make in
make.width.height.equalTo(24)
make.top.equalTo(whiteContentView.snp.bottom).offset(20)
make.centerX.equalTo(whiteContentView)
}
}
@objc func show() {
if YHLoginManager.shared.isShowVersionUpdate == false {
YHLoginManager.shared.isShowVersionUpdate = true
UIApplication.shared.yhKeyWindow()?.addSubview(self)
}
}
@objc func dismiss() {
YHLoginManager.shared.isShowVersionUpdate = false
self.removeFromSuperview()
}
@objc func didClickUpdateBtn() {
}
}
...@@ -72,7 +72,9 @@ extension UIColor { ...@@ -72,7 +72,9 @@ extension UIColor {
// 导航栏标题颜色 // 导航栏标题颜色
static let navTitleColor: UIColor = UIColor(hexString: "#0F1214")! static let navTitleColor: UIColor = UIColor(hexString: "#0F1214")!
// alertView 底部蒙层颜色
static let alertMaskColor: UIColor = UIColor.init(hex: 0x0F1214, alpha: 0.5)
public convenience init(r : CGFloat, g : CGFloat, b : CGFloat,alpha:CGFloat = 1.0) { public convenience init(r : CGFloat, g : CGFloat, b : CGFloat,alpha:CGFloat = 1.0) {
self.init(red: r / 255.0, green: g / 255.0, blue: b / 255.0, alpha: alpha) self.init(red: r / 255.0, green: g / 255.0, blue: b / 255.0, alpha: alpha)
......
{
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "popup升级提示-头图-@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "update_close.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment