From d06b0d24461a829fe3d83d8f5361cdf65c30de50 Mon Sep 17 00:00:00 2001 From: Carlos Mellado Date: Fri, 28 Jan 2022 15:21:37 +0100 Subject: [PATCH] Localization and fixed bugs --- MDatePickerView/ColDateCell.swift | 25 +++++++-- MDatePickerView/MDateConverter.swift | 49 ++++++++++++++++++ MDatePickerView/MDatePickerView.swift | 17 ++++-- MDatePickerViewDemo.xcodeproj/project.pbxproj | 4 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 22857 bytes .../xcschemes/xcschememanagement.plist | 19 +++++++ MDatePickerViewDemo/AppDelegate.swift | 2 - 7 files changed, 105 insertions(+), 11 deletions(-) create mode 100644 MDatePickerView/MDateConverter.swift create mode 100644 MDatePickerViewDemo.xcodeproj/project.xcworkspace/xcuserdata/carlosmellado.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 MDatePickerViewDemo.xcodeproj/xcuserdata/carlosmellado.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/MDatePickerView/ColDateCell.swift b/MDatePickerView/ColDateCell.swift index a2a67b7..95e1626 100644 --- a/MDatePickerView/ColDateCell.swift +++ b/MDatePickerView/ColDateCell.swift @@ -8,14 +8,30 @@ import UIKit + + class ColMonthCell: ColCell { - let month = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"] + let month = [ + MDateConverter.getMonthName(monthNumber: 1), + MDateConverter.getMonthName(monthNumber: 2), + MDateConverter.getMonthName(monthNumber: 3), + MDateConverter.getMonthName(monthNumber: 4), + MDateConverter.getMonthName(monthNumber: 5), + MDateConverter.getMonthName(monthNumber: 6), + MDateConverter.getMonthName(monthNumber: 7), + MDateConverter.getMonthName(monthNumber: 8), + MDateConverter.getMonthName(monthNumber: 9), + MDateConverter.getMonthName(monthNumber: 10), + MDateConverter.getMonthName(monthNumber: 11), + MDateConverter.getMonthName(monthNumber: 12)] var value = 0 + override func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { - return 12 + + return month.count } override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { @@ -54,7 +70,7 @@ class ColMonthCell: ColCell { class ColDayCell: ColCell { var day = 0 - let week = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"] + let week = MDateConverter.getDayNames() override var Selected: [Int] { didSet{ @@ -108,7 +124,8 @@ class ColDayCell: ColCell { override func layoutSubviews() { super.layoutSubviews() - Col.scrollToItem(at: [0,(Selected[2]) - 1], at: .centeredHorizontally, animated: true) + + Col.scrollToItem(at: [0,Selected[2] - 1], at: .centeredHorizontally, animated: true) } override func selectDate(_ T : Int) { diff --git a/MDatePickerView/MDateConverter.swift b/MDatePickerView/MDateConverter.swift new file mode 100644 index 0000000..ecf9970 --- /dev/null +++ b/MDatePickerView/MDateConverter.swift @@ -0,0 +1,49 @@ +// +// MDateConverter.swift +// MDatePickerView +// +// Created by Carlos Mellado on 28/1/22. +// Copyright © 2022 Matt. All rights reserved. +// + +import Foundation + +extension Date { + + func matchesComponentDay(_ componentDay: Int) -> Bool { + + let dateDay = Calendar.current.component(.day, from: self) + + return dateDay == componentDay + } +} + +enum MDateConverter { + + static func getMonthName(monthNumber : Int) -> String { + + var dateComponents = DateComponents() + dateComponents.month = monthNumber + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "MMM" + let date = Calendar.current.date(from: dateComponents)! + let string = dateFormatter.string(from: date) + + return string.replacingOccurrences(of: ".", with: "").capitalized + } + + static func getDayNames() -> [String] { + + return NSCalendar.current.weekdaySymbols + } + + static func rearrange(array: Array, fromIndex: Int, toIndex: Int) -> Array{ + + var arr = array + + let element = arr.remove(at: fromIndex) + arr.insert(element, at: toIndex) + + return arr + } +} diff --git a/MDatePickerView/MDatePickerView.swift b/MDatePickerView/MDatePickerView.swift index 3c8ec63..1cc9951 100644 --- a/MDatePickerView/MDatePickerView.swift +++ b/MDatePickerView/MDatePickerView.swift @@ -159,12 +159,19 @@ extension MDatePickerView : ColCellDelegate { Y = year } - let dateComponents = DateComponents(calendar: Calendar.current, year: Y, month: M, day: D) - if let date = dateComponents.date { - delegate?.mdatePickerView(selectDate: date) + var dateComponents = DateComponents(calendar: Calendar.current, year: Y, month: M, day: D) + + var theDate = dateComponents.date! + + while(!theDate.matchesComponentDay(dateComponents.day!)) { + + D = dateComponents.day! - 1 + dateComponents = DateComponents(calendar: dateComponents.calendar, year: Y, month: M, day: D) + theDate = dateComponents.date! } - scrollToitem() + delegate?.mdatePickerView(selectDate: theDate) + + scrollToitem() } - } diff --git a/MDatePickerViewDemo.xcodeproj/project.pbxproj b/MDatePickerViewDemo.xcodeproj/project.pbxproj index 59d4bc8..eb02456 100644 --- a/MDatePickerViewDemo.xcodeproj/project.pbxproj +++ b/MDatePickerViewDemo.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 2FB73C0527A406180004C006 /* MDateConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FB73C0427A406180004C006 /* MDateConverter.swift */; }; AE2F928B23D28AAB0039D22D /* CustomDatePickerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE2F928A23D28AAB0039D22D /* CustomDatePickerView.swift */; }; AE2F928D23D28D8A0039D22D /* TextLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE2F928C23D28D8A0039D22D /* TextLabel.swift */; }; AE6ED1A023D288CC00E32FB8 /* ColCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE6ED19E23D288CC00E32FB8 /* ColCell.swift */; }; @@ -49,6 +50,7 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 2FB73C0427A406180004C006 /* MDateConverter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MDateConverter.swift; sourceTree = ""; }; AE2F928A23D28AAB0039D22D /* CustomDatePickerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomDatePickerView.swift; sourceTree = ""; }; AE2F928C23D28D8A0039D22D /* TextLabel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextLabel.swift; sourceTree = ""; }; AE6ED19E23D288CC00E32FB8 /* ColCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ColCell.swift; sourceTree = ""; }; @@ -135,6 +137,7 @@ C95B53A523CC162E00C05C24 /* MDatePickerView.h */, C95B53A623CC162E00C05C24 /* Info.plist */, C95B53B223CC170A00C05C24 /* MDatePickerView.swift */, + 2FB73C0427A406180004C006 /* MDateConverter.swift */, C95B53B123CC170A00C05C24 /* ColDateCell.swift */, AE2F928A23D28AAB0039D22D /* CustomDatePickerView.swift */, AE6ED19D23D288CC00E32FB8 /* Utils */, @@ -267,6 +270,7 @@ files = ( C95B53CF23CC199900C05C24 /* ColDateCell.swift in Sources */, AE6ED1A023D288CC00E32FB8 /* ColCell.swift in Sources */, + 2FB73C0527A406180004C006 /* MDateConverter.swift in Sources */, AE2F928B23D28AAB0039D22D /* CustomDatePickerView.swift in Sources */, AE2F928D23D28D8A0039D22D /* TextLabel.swift in Sources */, C95B53CE23CC199900C05C24 /* MDatePickerView.swift in Sources */, diff --git a/MDatePickerViewDemo.xcodeproj/project.xcworkspace/xcuserdata/carlosmellado.xcuserdatad/UserInterfaceState.xcuserstate b/MDatePickerViewDemo.xcodeproj/project.xcworkspace/xcuserdata/carlosmellado.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..b6bf329cd6500277269a078396b3899b139754d6 GIT binary patch literal 22857 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 Na81C2lE16i{|9b)0ha&( literal 0 HcmV?d00001 diff --git a/MDatePickerViewDemo.xcodeproj/xcuserdata/carlosmellado.xcuserdatad/xcschemes/xcschememanagement.plist b/MDatePickerViewDemo.xcodeproj/xcuserdata/carlosmellado.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..ee42794 --- /dev/null +++ b/MDatePickerViewDemo.xcodeproj/xcuserdata/carlosmellado.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,19 @@ + + + + + SchemeUserState + + MDatePickerView.xcscheme_^#shared#^_ + + orderHint + 1 + + MDatePickerViewDemo.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/MDatePickerViewDemo/AppDelegate.swift b/MDatePickerViewDemo/AppDelegate.swift index ba0eac5..3daff1b 100644 --- a/MDatePickerViewDemo/AppDelegate.swift +++ b/MDatePickerViewDemo/AppDelegate.swift @@ -11,8 +11,6 @@ import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. return true