From 4ff548f2f67fc9a574af2e88d452f886eba7317d Mon Sep 17 00:00:00 2001 From: bluesea <307723040@qq.com> Date: Fri, 26 Apr 2024 15:15:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=87=8A=E6=94=BE=E8=A7=86?= =?UTF-8?q?=E5=9B=BE=E8=BF=9B=E8=80=8C=E4=BC=98=E5=8C=96=E5=86=85=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Project/Controller/CCHomeController.swift | 79 +++++++++++-------- .../CCSpaceAlbumFilterPopView2.swift | 19 +++-- 2 files changed, 56 insertions(+), 42 deletions(-) diff --git a/SwiftProject/SwiftProject/Project/Controller/CCHomeController.swift b/SwiftProject/SwiftProject/Project/Controller/CCHomeController.swift index 12b5325..55a1fe4 100644 --- a/SwiftProject/SwiftProject/Project/Controller/CCHomeController.swift +++ b/SwiftProject/SwiftProject/Project/Controller/CCHomeController.swift @@ -58,6 +58,8 @@ class CCHomeController: BaseController, LLCycleScrollViewDelegate,MFMailComposeV return view }() + //标记是否应该将vr预览的那个视图弹出来 + var shouldShowAlbumFilterPopView = false override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) self.navigationController?.tabBarController!.tabBar.isHidden = true; @@ -65,6 +67,11 @@ class CCHomeController: BaseController, LLCycleScrollViewDelegate,MFMailComposeV self.setNavgationBarColor(color: UIColor.clear) self.checkAirPlayStatus() + + if shouldShowAlbumFilterPopView { + showAlbumFilterPopView() + shouldShowAlbumFilterPopView = false + } } @@ -350,45 +357,47 @@ class CCHomeController: BaseController, LLCycleScrollViewDelegate,MFMailComposeV }else if sender.tag == 22 { //VR预览 - - let view = CCSpaceAlbumFilterPopView2.init(frame: CGRectMake(0, 0, KScreenWidth, KScreenHeight)) - self.view.addSubview(view) - view.show() - - //选择图片 - view.selectedImageHandler = { [weak self] data,asset in - print("回调") - - let vc = CCSpatialPhotoDisplayController() - vc.photoOriginalData = data - vc.imageAsset = asset - self?.navigationController?.pushViewController(vc, animated: true) - } - //选择视频 - view.selectedVideoHandler = {[weak self] url,asset in - if (asset.duration > 60 ) { - if !UserInfo.sharedInstance.isMemberShip { - let vc:MembershipVC = MembershipVC() - let nav = UINavigationController(rootViewController: vc) - nav.modalTransitionStyle = UIModalTransitionStyle.coverVertical - nav.modalPresentationStyle = .fullScreen - self?.present(nav, animated: true) - return - } - } - - let vc = CCSpatialVideoDisplayController() - vc.sourceVideoURL = url - vc.videoOriginalPHAsset = asset - self?.navigationController?.pushViewController(vc, animated: true) - } - - + showAlbumFilterPopView() } } - + //显示vr预览的弹窗 + func showAlbumFilterPopView() { + let view = CCSpaceAlbumFilterPopView2.init(frame: CGRectMake(0, 0, KScreenWidth, KScreenHeight)) + self.view.addSubview(view) + view.show() + + //选择图片 + view.selectedImageHandler = { [weak self] data,asset in + print("回调") + self?.shouldShowAlbumFilterPopView = true + let vc = CCSpatialPhotoDisplayController() + vc.photoOriginalData = data + vc.imageAsset = asset + self?.navigationController?.pushViewController(vc, animated: true) + } + //选择视频 + view.selectedVideoHandler = {[weak self] url,asset in + if (asset.duration > 60 ) { + if !UserInfo.sharedInstance.isMemberShip { + let vc:MembershipVC = MembershipVC() + let nav = UINavigationController(rootViewController: vc) + nav.modalTransitionStyle = UIModalTransitionStyle.coverVertical + nav.modalPresentationStyle = .fullScreen + self?.present(nav, animated: true) + self?.shouldShowAlbumFilterPopView = true + return + } + } + + let vc = CCSpatialVideoDisplayController() + vc.sourceVideoURL = url + vc.videoOriginalPHAsset = asset + self?.navigationController?.pushViewController(vc, animated: true) + self?.shouldShowAlbumFilterPopView = true + } + } func addMenu(){ diff --git a/SwiftProject/SwiftProject/Project/View/Album/CCSpaceAlbumFliterPopView/CCSpaceAlbumFilterPopView2.swift b/SwiftProject/SwiftProject/Project/View/Album/CCSpaceAlbumFliterPopView/CCSpaceAlbumFilterPopView2.swift index c217621..0b9a5ee 100644 --- a/SwiftProject/SwiftProject/Project/View/Album/CCSpaceAlbumFliterPopView/CCSpaceAlbumFilterPopView2.swift +++ b/SwiftProject/SwiftProject/Project/View/Album/CCSpaceAlbumFliterPopView/CCSpaceAlbumFilterPopView2.swift @@ -210,6 +210,7 @@ class CCSpaceAlbumFilterPopView2: UIView { //MARK: - 释放销毁 deinit { + print("ccspacealbumfilterpopview2....deinit....") NotificationCenter.default.removeObserver(self) } @@ -493,30 +494,34 @@ extension CCSpaceAlbumFilterPopView2:UICollectionViewDataSource, UICollectionVie // 关闭 if Thread.isMainThread { -// self.hide() +// if let imageData = imageData { self.selectedImageHandler?(imageData,asset) } + self.hide() }else{ DispatchQueue.main.async { -// self.hide() +// if let imageData = imageData { self.selectedImageHandler?(imageData,asset) } + self.hide() } } }else if asset.mediaType == .video { //选择的是video - self.getVideoURL(from: asset) { url,avasset in + self.getVideoURL(from: asset) {[weak self] url,avasset in if Thread.isMainThread { -// self.hide() - self.selectedVideoHandler?(url,asset) +// + self?.selectedVideoHandler?(url,asset) + self?.hide() }else{ DispatchQueue.main.async { -// self.hide() - self.selectedVideoHandler?(url,asset) +// + self?.selectedVideoHandler?(url,asset) + self?.hide() } } }