瀏覽代碼

添加了日期

南鑫林 5 年之前
父節點
當前提交
d2c6b0e23d

+ 3 - 1
RainbowPlanet/Podfile

@@ -57,8 +57,10 @@ target 'RainbowPlanet' do
   pod 'SwiftyMediator/Routable'
   # 上下滚动的Label
   pod 'DPScrollNumberLabel'
-  
+  # TabBarController
   pod 'ESTabBarController-swift'
+  # 日期选择器
+  pod 'PGDatePicker'
   
   # Label扩展
   pod 'YYText'

+ 9 - 1
RainbowPlanet/Podfile.lock

@@ -59,6 +59,9 @@ PODS:
     - Moya/Core
     - RxSwift (~> 4.0)
   - ObjectMapper (3.5.1)
+  - PGDatePicker (2.6.9):
+    - PGPickerView
+  - PGPickerView (1.3.8)
   - PPBadgeViewSwift (3.1.0)
   - QuCore-ThirdParty (3.10.0)
   - Result (4.1.0)
@@ -131,6 +134,7 @@ DEPENDENCIES:
   - MLeaksFinder
   - Moya/RxSwift
   - ObjectMapper
+  - PGDatePicker
   - PPBadgeViewSwift
   - QuCore-ThirdParty
   - RongCloudIM/IMKit (= 2.9.24)
@@ -187,6 +191,8 @@ SPEC REPOS:
     - MLeaksFinder
     - Moya
     - ObjectMapper
+    - PGDatePicker
+    - PGPickerView
     - PPBadgeViewSwift
     - QuCore-ThirdParty
     - Result
@@ -239,6 +245,8 @@ SPEC CHECKSUMS:
   MLeaksFinder: 8c435bd2f6d070af18cff082b503b21adc130fc0
   Moya: f4a4b80ff2f8a4ffc208dfb31cd91636622fee6e
   ObjectMapper: 70187b8941977c62ccfb423caf6b50be405cabf0
+  PGDatePicker: 88960f3760edac96219c10320f25536ad31d0f44
+  PGPickerView: 037acfb132a4c8054fb43aaa59a5ff50c7f747f5
   PPBadgeViewSwift: 18a219a9897f418342c22dd1a54f7b18ac56546b
   QuCore-ThirdParty: 60a6f08864631569569fa1e2c6208a7746698923
   Result: bd966fac789cc6c1563440b348ab2598cc24d5c7
@@ -259,6 +267,6 @@ SPEC CHECKSUMS:
   YYText: 5c461d709e24d55a182d1441c41dc639a18a4849
   ZipArchive: e25a4373192673e3229ac8d6e9f64a3e5713c966
 
-PODFILE CHECKSUM: 29872dc6d56e23549133bb64997309d23d15b978
+PODFILE CHECKSUM: 936090887b8a98ea9318ed9a5a733e4067b0267f
 
 COCOAPODS: 1.8.3

+ 12 - 0
RainbowPlanet/RainbowPlanet.xcodeproj/project.pbxproj

@@ -294,6 +294,7 @@
 		A784F29D234C370F00E49140 /* PhotoAlbumUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = A784F29C234C370F00E49140 /* PhotoAlbumUtil.swift */; };
 		A784F2A5234C86EC00E49140 /* ATAuthSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A784F2A4234C86EC00E49140 /* ATAuthSDK.framework */; };
 		A784F2A8234DB0AE00E49140 /* BackyardActivityViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A784F2A7234DB0AE00E49140 /* BackyardActivityViewController.swift */; };
+		A784F2AB234ED15600E49140 /* DatePickerManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A784F2AA234ED15600E49140 /* DatePickerManager.swift */; };
 		A78A5F7622FAA03800DD1764 /* share_iSpt.gif in Resources */ = {isa = PBXBuildFile; fileRef = A78A5F7522FAA03800DD1764 /* share_iSpt.gif */; };
 		A78A5F7822FAC7F000DD1764 /* SetGenderModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A78A5F7722FAC7F000DD1764 /* SetGenderModel.swift */; };
 		A78CEE0A22E0864100C512A4 /* BaseLottieAnimateContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A78CEE0922E0864100C512A4 /* BaseLottieAnimateContentView.swift */; };
@@ -976,6 +977,7 @@
 		A784F29C234C370F00E49140 /* PhotoAlbumUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhotoAlbumUtil.swift; sourceTree = "<group>"; };
 		A784F2A4234C86EC00E49140 /* ATAuthSDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = ATAuthSDK.framework; sourceTree = "<group>"; };
 		A784F2A7234DB0AE00E49140 /* BackyardActivityViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BackyardActivityViewController.swift; sourceTree = "<group>"; };
+		A784F2AA234ED15600E49140 /* DatePickerManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatePickerManager.swift; sourceTree = "<group>"; };
 		A78A5F7522FAA03800DD1764 /* share_iSpt.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = share_iSpt.gif; sourceTree = "<group>"; };
 		A78A5F7722FAC7F000DD1764 /* SetGenderModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SetGenderModel.swift; sourceTree = "<group>"; };
 		A78CEE0922E0864100C512A4 /* BaseLottieAnimateContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseLottieAnimateContentView.swift; sourceTree = "<group>"; };
@@ -1963,6 +1965,7 @@
 		A72A725422321B9400B21995 /* Manager */ = {
 			isa = PBXGroup;
 			children = (
+				A784F2AC234ED16500E49140 /* DatePickerManager */,
 				A74144AA23306E930062FB6F /* RongCloudIMManager */,
 				A7EE6E0E230547F900628D39 /* ThumbnailsManager */,
 				A7F577D522FED33500E2D757 /* PathManager */,
@@ -3260,6 +3263,14 @@
 			path = ViewController;
 			sourceTree = "<group>";
 		};
+		A784F2AC234ED16500E49140 /* DatePickerManager */ = {
+			isa = PBXGroup;
+			children = (
+				A784F2AA234ED15600E49140 /* DatePickerManager.swift */,
+			);
+			path = DatePickerManager;
+			sourceTree = "<group>";
+		};
 		A78A5F7422FAA01F00DD1764 /* Gif */ = {
 			isa = PBXGroup;
 			children = (
@@ -5937,6 +5948,7 @@
 				A7F2D6D922B250EF0093000B /* CardContentPicVideoTableViewCell.swift in Sources */,
 				A77BB45F2329EE3500DCAE32 /* NXLPermissionLocation.swift in Sources */,
 				BDBC0AF622DDEA4E00CA788E /* PublishRecommendMusicController.swift in Sources */,
+				A784F2AB234ED15600E49140 /* DatePickerManager.swift in Sources */,
 				A7C2568022CD9D8E00420828 /* RecommendSimilarHeaderView.swift in Sources */,
 				A7CC7516227161D5003C4F38 /* SetViewController.swift in Sources */,
 				A7D07CD422B789DE00186014 /* PersonViewUserAndOtherListView.swift in Sources */,

+ 1 - 1
RainbowPlanet/RainbowPlanet/Base/BaseViewController/BaseViewController.swift

@@ -70,7 +70,7 @@ class BaseViewController: UIViewController {
     override func didReceiveMemoryWarning() {
         super.didReceiveMemoryWarning()
         KingfisherManager.shared.cache.clearDiskCache()
-//        KingfisherManager.shared.cache.clearMemoryCache()
+        KingfisherManager.shared.cache.clearMemoryCache()
     }
 
 }

+ 2 - 0
RainbowPlanet/RainbowPlanet/Macro/RainbowPlanet-Bridging-Header.h

@@ -86,6 +86,8 @@
 
 #import "YPDouYinLikeAnimation.h"
 
+#import "PGDatePickManager.h"
+
 
 
 

+ 79 - 0
RainbowPlanet/RainbowPlanet/Manager/DatePickerManager/DatePickerManager.swift

@@ -0,0 +1,79 @@
+//
+//  DatePickerManager.swift
+//  RainbowPlanet
+//
+//  Created by 南鑫林 on 2019/10/10.
+//  Copyright © 2019 RainbowPlanet. All rights reserved.
+//
+
+import UIKit
+
+class DatePickerManager: NSObject {
+    
+    static let shared : DatePickerManager = DatePickerManager()
+    
+    // MARK: 私有化init方法
+    /// 私有化init方法
+    private override init() {}
+    
+    
+    /// 返回类型
+    ///
+    /// - timeStamp: 时间戳
+    enum DateReturnType {
+        case timeStamp
+    }
+    
+    var datePickManager: PGDatePickManager?
+    var datePicker: PGDatePicker?
+    var dateReturnType : DateReturnType?
+    
+    typealias DidSelectDateClosure = (Any) -> Void
+    var didSelectDateClosure : DidSelectDateClosure?
+    
+    
+    /// 初始化时间
+    ///
+    /// - Parameters:
+    ///   - timeStamp: 设置时间
+    ///   - dateReturnType: 返回类型
+    ///   - didSelectDateClosure: 返回数据
+    func initDatePickerManager(timeStamp:Int = Date().timeStamp(),dateReturnType:DateReturnType? = .timeStamp,didSelectDateClosure:DidSelectDateClosure? = nil) {
+        
+        datePickManager = PGDatePickManager()
+        datePickManager?.isShadeBackground = true
+        datePickManager?.confirmButtonTextColor = kThemeColor
+        
+        datePicker = datePickManager?.datePicker
+        datePicker?.delegate = self
+        datePicker?.datePickerMode = .dateHourMinute
+        datePicker?.isHiddenMiddleText = true
+        datePicker?.showUnit = .center
+        datePicker?.minimumDate = Date()
+        datePicker?.lineBackgroundColor = UIColor.white
+        datePicker?.textColorOfSelectedRow = kThemeColor
+        datePicker?.middleTextColor = kThemeColor
+        datePicker?.setDate(Date.date(timeStamp: timeStamp), animated: false)
+        
+        self.dateReturnType = dateReturnType
+        self.didSelectDateClosure = didSelectDateClosure
+
+        let vc = UIViewController.topMost
+        vc?.present(datePickManager ?? PGDatePickManager(), animated: false, completion: nil)
+    }
+}
+
+extension DatePickerManager: PGDatePickerDelegate {
+    func datePicker(_ datePicker: PGDatePicker!, didSelectDate dateComponents: DateComponents!) {
+        switch dateReturnType {
+        case .timeStamp?:
+            let  date = Calendar.current.date(from: dateComponents)
+            let  timeStamp = date?.timeStamp()
+            if let didSelectDateClosure = didSelectDateClosure {
+                didSelectDateClosure(timeStamp ?? Date().timeStamp())
+            }
+        default:
+            break
+        }
+    }
+}

+ 0 - 1
RainbowPlanet/RainbowPlanet/Tools/BrowsePictures/ViewController/BrowsePicturesViewController.swift

@@ -195,7 +195,6 @@ UICollectionViewDelegateFlowLayout{
             let cell = BrowsePicturesPagerViewCell.cellWith(collectionView: collectionView, indexPath: indexPath)
             if !(imageStrs.isEmpty){
                 cell.iconImageView.kf.setImage(with: kURLImage(name: imageStrs[indexPath.row]), placeholder: kImage(name: ""))
-                
             }
             if !(images.isEmpty){
                 cell.iconImageView.image = images[indexPath.row]

+ 19 - 0
RainbowPlanet/RainbowPlanet/Tools/Extension/Extension+Date.swift

@@ -23,4 +23,23 @@ extension Date {
         let dateStr = formatter.string(from: date)
         return dateStr
     }
+    
+    /// 当前时间的时间戳
+    ///
+    /// - Returns: 时间戳
+    func timeStamp() -> Int {
+        let timeInterval : TimeInterval = self.timeIntervalSince1970
+        let timeStamp = Int(timeInterval)
+        return timeStamp
+    }
+    
+    /// 时间戳转时间
+    ///
+    /// - Parameter timeStamp: 时间戳
+    /// - Returns: Date
+    static func date(timeStamp:Int) -> Date {
+        let timeInterval:TimeInterval = TimeInterval(timeStamp)
+        let date = Date(timeIntervalSince1970: timeInterval)
+        return date
+    }
 }