From 42c8e8b6da1e253687f595d416b5a022f8ad414f Mon Sep 17 00:00:00 2001 From: hyun99999 Date: Fri, 25 Mar 2022 12:37:46 +0900 Subject: [PATCH 1/9] =?UTF-8?q?[Chore]=20#383=20-=20=ED=9A=8C=EC=9B=90?= =?UTF-8?q?=ED=83=88=ED=87=B4=20=EC=B2=B4=ED=81=AC=EB=B2=84=ED=8A=BC=20?= =?UTF-8?q?=EC=9D=B4=EB=AF=B8=EC=A7=80=20=EC=97=90=EC=85=8B=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../btnCheckBox.imageset/Contents.json | 23 ++++++++++++++++++ .../btnCheckBox.imageset/btnCheckBox.png | Bin 0 -> 245 bytes .../btnCheckBox.imageset/btnCheckBox@2x.png | Bin 0 -> 343 bytes .../btnCheckBox.imageset/btnCheckBox@3x.png | Bin 0 -> 450 bytes .../btnCheckBoxDefault.imageset/Contents.json | 23 ++++++++++++++++++ .../btnCheckBoxDefault.png | Bin 0 -> 165 bytes .../btnCheckBoxDefault@2x.png | Bin 0 -> 207 bytes .../btnCheckBoxDefault@3x.png | Bin 0 -> 232 bytes 8 files changed, 46 insertions(+) create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/Contents.json create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox.png create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox@2x.png create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox@3x.png create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/Contents.json create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault.png create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault@2x.png create mode 100644 Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault@3x.png diff --git a/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/Contents.json b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/Contents.json new file mode 100644 index 00000000..885439c0 --- /dev/null +++ b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "scale" : "1x", + "filename" : "btnCheckBox.png", + "idiom" : "universal" + }, + { + "idiom" : "universal", + "filename" : "btnCheckBox@2x.png", + "scale" : "2x" + }, + { + "filename" : "btnCheckBox@3x.png", + "scale" : "3x", + "idiom" : "universal" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox.png b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox.png new file mode 100644 index 0000000000000000000000000000000000000000..8e81724e54b96aa97556d9a7753ad0fbe62f5a70 GIT binary patch literal 245 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAd3?%E9GuQzsmUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UIIA=0X`wF{~2t-$QsH}2>lNP_n-Yw>G*&D`G14N|EI417x4Vwwd}t`?*I3n zdt%bJf($MR@(aHIK0ZOdyMi0Y5B79%4B@z*98l88q{b#Dae3lFR=$q3vI8^YZWcWI zWtot+qPsggm1D-vza8E`LOQmkM;~ZXSmyrjW4yuPbyIa44Qq`B!fXycXA_h--FT4U cm!lvI6;x#X;^) z4C~IxyaaM|1AIbU-3xsFGuZxTu=&s6@Sni~#0G-fPyP#d{;!|+Um^6rLE`_#JO8J3 z{eS;?%I(cgK#i;=L4Lsu?{_FDXkPdu3l!My>EaloaXvXAjK`JPk&mZsp@c(=qiC=} z2V<~~iNNfH7Z1dH?sd5qRO&5D2#KuHZhP=)%XJAY0sM*53t$A*jnnYl)u2oc~?E6JGST?HV iuaRt&bY3}unPI{Kk(+yEwcZ20z~JfX=d#Wzp$Pyu35F;D literal 0 HcmV?d00001 diff --git a/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox@3x.png b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBox.imageset/btnCheckBox@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f203bb6142cd0d125e914c65141c64f7d4525c82 GIT binary patch literal 450 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKw3=&b&bO2H;>5jgR3=A9lx&I`x0{M)^LGDfr z>(0r%1afQwd_r8^3w-`F*!^d){SO2T*8dr7z{nOP0%R+M{=fhHf9;(A0-pbklmEZ} z{QvZg{|mPLpRnqGLaT`FY-gZ3TqQw%!3+)m|0gtL-I6$PH9;&8XcM2Oi(`n#@we9< z`I;33STAU11qcZ2{U58{qo;9U;p0tbZix&1kY{E%b6KfQ&eCZ{B-gbQKacoGf7Q5Q z{83yiiSc8C)w>;!i>EwFUb^*Z(&F}mk#c6Y1&(dn&|j9icF*%|lIvM-cU^q9rr7Ou zq@v?)Nv8TVjdOx)&0K8O>eVF0Zs|Hv_9N%CQ{-08u%)?yyRt4%ppQRoyHip8{OFcri8TRgrQQ0JM z;*{&6=&kq7^n;vL3uk+~W*w+F@YLb*bVrN4OJVs!Pcx$Tx9Q~mKL0oV!=dd$YIbrr o&#&6>;jp{pffEl-zuuBRafwpWoP%~o!0=-5boFyt=akR{07Rq4J^%m! literal 0 HcmV?d00001 diff --git a/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/Contents.json b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/Contents.json new file mode 100644 index 00000000..f8b33486 --- /dev/null +++ b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "scale" : "1x", + "filename" : "btnCheckBoxDefault.png", + "idiom" : "universal" + }, + { + "scale" : "2x", + "filename" : "btnCheckBoxDefault@2x.png", + "idiom" : "universal" + }, + { + "idiom" : "universal", + "filename" : "btnCheckBoxDefault@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault.png b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault.png new file mode 100644 index 0000000000000000000000000000000000000000..725ddc4fa338bd6aaa4e500bad09060a08c87758 GIT binary patch literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAd3?%E9GuQzsmUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UIIBn0X`wF8#irnFYwv0Vavu%Ti1iY_A471{{Us#N`m}?|1-qjS5PoCK6(x) zBJb(q7{YNqIUucpNtsR9QG+8bp~aB3jZOIEOAdZU22VwvNG2mGKcG?uPgg&ebxsLQ E0O!lvI6;x#X;^) z4C~IxyaaMY1AIbU-3xp+ZrTDw>(_5z4+cQC$DbGOKm}|iL4Lsu8{R7@2skk7oCS)w zdAc};Xq-<@5c6_o?&RZf%am|vb@Z9S$Sa{{w8U}&_a-&NC58zNTLKRT9z3YDLaagW s*qmbuYE60)GdgUQ4Z0V0Yg#cdbfsASdcEuEdZ396p00i_>zopr0Fq}zSO5S3 literal 0 HcmV?d00001 diff --git a/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault@3x.png b/Spark-iOS/Spark-iOS/Resource/Assets.xcassets/btnCheckBoxDefault.imageset/btnCheckBoxDefault@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..8e1153eac10e9622d7ab644b79d773a590dde655 GIT binary patch literal 232 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKx3?xrnI^qbVSkfJRf%L|H?mvmFKt5w}kh>GZ zx^prwfgI5QpAc8~0-ueWwrtqAWjzRN2Vx-itsd(^paQm%AirRS%OwH|3g40@odk-+ zd%8G=Se$-))sU;fK)~f<;E^bSAnwL5%Rb1+DRvrsw{MC|D9cVSXc7lVvS(Vtm_Xz;Qxl&?|wRSuFMHrVWwX^qg2H>Zh2SJ=kv|S Rw1HMJc)I$ztaD0e0sun!S Date: Fri, 25 Mar 2022 15:02:47 +0900 Subject: [PATCH 2/9] =?UTF-8?q?[Add]=20=ED=9A=8C=EC=9B=90=ED=83=88?= =?UTF-8?q?=ED=87=B4=20=EB=B7=B0=EC=BB=A8=ED=8A=B8=EB=A1=A4=EB=9F=AC,=20?= =?UTF-8?q?=EC=8A=A4=ED=86=A0=EB=A6=AC=EB=B3=B4=EB=93=9C=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Spark-iOS/Spark-iOS.xcodeproj/project.pbxproj | 8 +++++ .../Resource/Constants/Storyboard.swift | 1 + .../Resource/Constants/ViewController.swift | 1 + .../Storyboards/Mypage/Withdrawal.storyboard | 33 +++++++++++++++++++ .../ViewControllers/Mypage/WithdrawalVC.swift | 29 ++++++++++++++++ 5 files changed, 72 insertions(+) create mode 100644 Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard create mode 100644 Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift diff --git a/Spark-iOS/Spark-iOS.xcodeproj/project.pbxproj b/Spark-iOS/Spark-iOS.xcodeproj/project.pbxproj index 1aa90ef9..bc95461e 100644 --- a/Spark-iOS/Spark-iOS.xcodeproj/project.pbxproj +++ b/Spark-iOS/Spark-iOS.xcodeproj/project.pbxproj @@ -176,6 +176,8 @@ F867B6B6278F86610024B1D4 /* UINavigationController+.swift in Sources */ = {isa = PBXBuildFile; fileRef = F867B6B5278F86610024B1D4 /* UINavigationController+.swift */; }; F86C68B727955ABA009A5296 /* SparkFlake.swift in Sources */ = {isa = PBXBuildFile; fileRef = F86C68B627955ABA009A5296 /* SparkFlake.swift */; }; F86C68B927958AA9009A5296 /* UIImageView+.swift in Sources */ = {isa = PBXBuildFile; fileRef = F86C68B827958AA9009A5296 /* UIImageView+.swift */; }; + F8902FB927ED84060034E8F9 /* Withdrawal.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F8902FB827ED84060034E8F9 /* Withdrawal.storyboard */; }; + F8902FBD27ED844E0034E8F9 /* WithdrawalVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8902FBC27ED844E0034E8F9 /* WithdrawalVC.swift */; }; F8ABAEFD279615DA00C0F774 /* splash_bg_iOS.json in Resources */ = {isa = PBXBuildFile; fileRef = F8ABAEFC279615DA00C0F774 /* splash_bg_iOS.json */; }; F8ABAEFF2796163300C0F774 /* splash_logo.json in Resources */ = {isa = PBXBuildFile; fileRef = F8ABAEFE2796163300C0F774 /* splash_logo.json */; }; F8C14A9B2795094800498687 /* HomeEmptyCVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8C14A992795094800498687 /* HomeEmptyCVC.swift */; }; @@ -405,6 +407,8 @@ F867B6B5278F86610024B1D4 /* UINavigationController+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UINavigationController+.swift"; sourceTree = ""; }; F86C68B627955ABA009A5296 /* SparkFlake.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SparkFlake.swift; sourceTree = ""; }; F86C68B827958AA9009A5296 /* UIImageView+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIImageView+.swift"; sourceTree = ""; }; + F8902FB827ED84060034E8F9 /* Withdrawal.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = Withdrawal.storyboard; sourceTree = ""; }; + F8902FBC27ED844E0034E8F9 /* WithdrawalVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WithdrawalVC.swift; sourceTree = ""; }; F8ABAEFC279615DA00C0F774 /* splash_bg_iOS.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = splash_bg_iOS.json; sourceTree = ""; }; F8ABAEFE2796163300C0F774 /* splash_logo.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = splash_logo.json; sourceTree = ""; }; F8C14A992795094800498687 /* HomeEmptyCVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeEmptyCVC.swift; sourceTree = ""; }; @@ -1311,6 +1315,7 @@ children = ( F8E4DFCF27D0858500128B1F /* MypageVC.swift */, F8250CF027D238440073FFCA /* EditProfileVC.swift */, + F8902FBC27ED844E0034E8F9 /* WithdrawalVC.swift */, ); path = Mypage; sourceTree = ""; @@ -1320,6 +1325,7 @@ children = ( F8E4DFD227D0877000128B1F /* Mypage.storyboard */, F8250CF227D238990073FFCA /* EditProfile.storyboard */, + F8902FB827ED84060034E8F9 /* Withdrawal.storyboard */, ); path = Mypage; sourceTree = ""; @@ -1477,6 +1483,7 @@ F8F6D6F52797359600725537 /* HabitRoom.storyboard in Resources */, F82B2E0E278ED01F00219628 /* Splash.storyboard in Resources */, EBE90FDC279612CA00157075 /* SendSpark.storyboard in Resources */, + F8902FB927ED84060034E8F9 /* Withdrawal.storyboard in Resources */, 2B54D01927D3B8170060DA06 /* FeedReport.storyboard in Resources */, F80A3E51278C1BCE00728E07 /* Feed.storyboard in Resources */, EBEA383527948C2D00B5736A /* ticket_welcome.json in Resources */, @@ -1694,6 +1701,7 @@ 2BE907E127D9EE9700B36002 /* NoticeService.swift in Sources */, F821813327DE512D00DDFBF8 /* SparkTabBarItem.swift in Sources */, F8096F3027841F9200B71D38 /* HomeVC.swift in Sources */, + F8902FBD27ED844E0034E8F9 /* WithdrawalVC.swift in Sources */, F8250CFA27D25F2B0073FFCA /* UserService.swift in Sources */, F82F5808279289B2003E4174 /* HomeAPI.swift in Sources */, EBA93A7F279080E2009AE771 /* JoinCheckVC.swift in Sources */, diff --git a/Spark-iOS/Spark-iOS/Resource/Constants/Storyboard.swift b/Spark-iOS/Spark-iOS/Resource/Constants/Storyboard.swift index 9726070a..4c33af5e 100644 --- a/Spark-iOS/Spark-iOS/Resource/Constants/Storyboard.swift +++ b/Spark-iOS/Spark-iOS/Resource/Constants/Storyboard.swift @@ -43,6 +43,7 @@ extension Const { static let completeFailDialogue = "CompleteFailDialogue" static let onboarding = "Onboarding" static let habitRoomGuide = "HabitRoomGuide" + static let withdrawal = "Withdrawal" } } } diff --git a/Spark-iOS/Spark-iOS/Resource/Constants/ViewController.swift b/Spark-iOS/Spark-iOS/Resource/Constants/ViewController.swift index 5720e3b3..7c58cd04 100644 --- a/Spark-iOS/Spark-iOS/Resource/Constants/ViewController.swift +++ b/Spark-iOS/Spark-iOS/Resource/Constants/ViewController.swift @@ -43,6 +43,7 @@ extension Const { static let completeFailDialogue = "CompleteFailDialogueVC" static let onboarding = "OnboardingVC" static let habitRoomGuide = "HabitRoomGuideVC" + static let withdrawal = "WithdrawalVC" } } } diff --git a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard new file mode 100644 index 00000000..a8e49798 --- /dev/null +++ b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift new file mode 100644 index 00000000..6ca14ea4 --- /dev/null +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift @@ -0,0 +1,29 @@ +// +// WithdrawalVC.swift +// Spark-iOS +// +// Created by kimhyungyu on 2022/03/25. +// + +import UIKit + +class WithdrawalVC: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + // Do any additional setup after loading the view. + } + + + /* + // MARK: - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + // Get the new view controller using segue.destination. + // Pass the selected object to the new view controller. + } + */ + +} From dc236812c12301aa882686cff9a212359dc29f6a Mon Sep 17 00:00:00 2001 From: hyun99999 Date: Fri, 25 Mar 2022 15:05:37 +0900 Subject: [PATCH 3/9] =?UTF-8?q?[Refactor]=20leftButtonAction=20=EC=9C=BC?= =?UTF-8?q?=EB=A1=9C=20=EB=84=A4=EC=9D=B4=EB=B0=8D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LeftButtonNavigaitonBar.swift | 2 +- .../Auth/AuthTimer/AuthTimerVC.swift | 2 +- .../Auth/AuthUpload/AuthUploadVC.swift | 4 +-- .../ViewControllers/Create/CreateAuthVC.swift | 2 +- .../ViewControllers/Create/CreateRoomVC.swift | 2 +- .../ViewControllers/Feed/FeedReportVC.swift | 2 +- .../HabitRoom/HabitRoomVC.swift | 2 +- .../HabitRoom/SendSparkVC.swift | 2 +- .../Mypage/EditProfileVC.swift | 2 +- .../ViewControllers/Mypage/MypageVC.swift | 2 +- .../ViewControllers/Mypage/WithdrawalVC.swift | 30 +++++++++++++------ .../ViewControllers/Notice/NoticeVC.swift | 2 +- .../StorageMore/StorageMoreVC.swift | 4 +-- .../ViewControllers/Waiting/WaitingVC.swift | 6 ++-- 14 files changed, 38 insertions(+), 26 deletions(-) diff --git a/Spark-iOS/Spark-iOS/Source/Classes/SparkNavigationBar/LeftButtonNavigaitonBar.swift b/Spark-iOS/Spark-iOS/Source/Classes/SparkNavigationBar/LeftButtonNavigaitonBar.swift index f1294c1a..a7cdd36a 100644 --- a/Spark-iOS/Spark-iOS/Source/Classes/SparkNavigationBar/LeftButtonNavigaitonBar.swift +++ b/Spark-iOS/Spark-iOS/Source/Classes/SparkNavigationBar/LeftButtonNavigaitonBar.swift @@ -86,7 +86,7 @@ class LeftButtonNavigaitonBar: SparkNavigationBar { /// add action to reft button. @discardableResult - func leftButonAction(_ clousure: (() -> Void)? = nil) -> Self { + func leftButtonAction(_ clousure: (() -> Void)? = nil) -> Self { self.leftButtonClosure = clousure self.leftButton.addTarget(self, action: #selector(leftButtonSelector), for: .touchUpInside) diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthTimer/AuthTimerVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthTimer/AuthTimerVC.swift index a479fb0a..37574ec3 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthTimer/AuthTimerVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthTimer/AuthTimerVC.swift @@ -55,7 +55,7 @@ class AuthTimerVC: UIViewController { private func setUI() { customNavigationBar.title(roomName ?? "") .leftButtonImage("icQuit") - .leftButonAction { + .leftButtonAction { self.dismissToHabitRoom() } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthUpload/AuthUploadVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthUpload/AuthUploadVC.swift index 7e6ccd35..4c03046e 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthUpload/AuthUploadVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Auth/AuthUpload/AuthUploadVC.swift @@ -64,14 +64,14 @@ extension AuthUploadVC { case .photoOnly: customNavigationBar.title(roomName ?? "") .leftButtonImage("icQuit") - .leftButonAction { + .leftButtonAction { self.presentToDialogue() } case .photoTimer: customNavigationBar.title(roomName ?? "") .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToPresentingVC() } .rightButtonImage("icQuit") diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateAuthVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateAuthVC.swift index 09227c55..e898eb09 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateAuthVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateAuthVC.swift @@ -42,7 +42,7 @@ class CreateAuthVC: UIViewController { private func setUI() { customNavigationBar.title("") .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToCreatRoomVC() } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateRoomVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateRoomVC.swift index c1752643..e9251a91 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateRoomVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Create/CreateRoomVC.swift @@ -41,7 +41,7 @@ class CreateRoomVC: UIViewController { customNavigationBar.title("") .leftButtonImage("icQuit") - .leftButonAction { + .leftButtonAction { self.dismissToHomeVC() } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Feed/FeedReportVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Feed/FeedReportVC.swift index 29172872..965ae108 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Feed/FeedReportVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Feed/FeedReportVC.swift @@ -88,7 +88,7 @@ class FeedReportVC: UIViewController { customNavigationBar.title("게시물 신고") .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToFeedVC() } } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/HabitRoomVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/HabitRoomVC.swift index a5c39b29..4eb0f4cb 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/HabitRoomVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/HabitRoomVC.swift @@ -106,7 +106,7 @@ extension HabitRoomVC { .tintColor(.sparkWhite) .backgroundColor(.clear) .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToHomeVC() } .rightButtonImage("icMoreVerticalWhite") diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/SendSparkVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/SendSparkVC.swift index dd3b140f..9109e9c3 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/SendSparkVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/HabitRoom/SendSparkVC.swift @@ -119,7 +119,7 @@ extension SendSparkVC { .backgroundColor(.clear) .tintColor(.sparkWhite) .leftButtonImage("icQuit") - .leftButonAction { + .leftButtonAction { self.dismiss(animated: true, completion: nil) self.removeObservers() } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/EditProfileVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/EditProfileVC.swift index b9f638bb..7e37e123 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/EditProfileVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/EditProfileVC.swift @@ -48,7 +48,7 @@ extension EditProfileVC { private func setUI() { customNavigationBar.title("프로필 수정") .leftButtonImage("icQuit") - .leftButonAction { + .leftButtonAction { if self.didEdit { guard let dialougeVC = UIStoryboard(name: Const.Storyboard.Name.dialogue, bundle: nil).instantiateViewController(withIdentifier: Const.ViewController.Identifier.dialogue) as? DialogueVC else { return } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift index be6126e9..23d0aa80 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift @@ -69,7 +69,7 @@ extension MypageVC { customNavigationBar.title("MY") .font(.h3SubtitleEng) .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.navigationController?.popViewController(animated: true) NotificationCenter.default.post(name: .appearFloatingButton, object: nil) } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift index 6ca14ea4..d53b8ab2 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift @@ -9,21 +9,33 @@ import UIKit class WithdrawalVC: UIViewController { + // MARK: - Properties + + private let customNavigationBar = LeftButtonNavigaitonBar() + + // MARK: - View Life Cycle + override func viewDidLoad() { super.viewDidLoad() - // Do any additional setup after loading the view. + setUI() } - +} - /* - // MARK: - Navigation +// MARK: - Extension - // In a storyboard-based application, you will often want to do a little preparation before navigation - override func prepare(for segue: UIStoryboardSegue, sender: Any?) { - // Get the new view controller using segue.destination. - // Pass the selected object to the new view controller. +extension WithdrawalVC { + private func setUI() { + customNavigationBar.title("회원 탈퇴") + .leftButtonImage("icBackWhite") + .leftButtonAction(<#T##clousure: (() -> Void)?##(() -> Void)?##() -> Void#>) } - */ +} +// MARK: - Layout + +extension WithdrawalVC { + private func setLayout() { + + } } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Notice/NoticeVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Notice/NoticeVC.swift index b0ca4877..3d29ccde 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Notice/NoticeVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Notice/NoticeVC.swift @@ -77,7 +77,7 @@ class NoticeVC: UIViewController { customNavigationBar.title("알림") .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToHomeVC() } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/StorageMore/StorageMoreVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/StorageMore/StorageMoreVC.swift index 7289ce6f..fbe0fbf1 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/StorageMore/StorageMoreVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/StorageMore/StorageMoreVC.swift @@ -89,7 +89,7 @@ extension StorageMoreVC { .tintColor(.sparkWhite) .backgroundColor(.sparkBlack) .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToStorageVC() } .rightButtonImage("icMoreVerticalWhite") @@ -101,7 +101,7 @@ extension StorageMoreVC { .tintColor(.sparkWhite) .backgroundColor(.sparkBlack) .leftButtonTitle("취소") - .leftButonAction { + .leftButtonAction { self.dismiss(animated: true, completion: nil) } .rightButtonPinkTitle("완료") diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Waiting/WaitingVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Waiting/WaitingVC.swift index 95136838..fa95435e 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Waiting/WaitingVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Waiting/WaitingVC.swift @@ -116,7 +116,7 @@ extension WaitingVC { navigationController?.interactivePopGestureRecognizer?.delegate = self customNavigationBar.title(title) .leftButtonImage("icBackWhite") - .leftButonAction { + .leftButtonAction { self.popToHomeVC() } .rightButtonImage("icMoreVerticalBlack") @@ -126,7 +126,7 @@ extension WaitingVC { case .joinCode: customNavigationBar.title(title) .leftButtonImage("icHome") - .leftButonAction { + .leftButtonAction { self.dismissJoinCodeToHomeVC() } .rightButtonImage("icMoreVerticalBlack") @@ -136,7 +136,7 @@ extension WaitingVC { case .makeRoom: customNavigationBar.title(title) .leftButtonImage("icHome") - .leftButonAction { + .leftButtonAction { self.dismissToHomeVC() } .rightButtonImage("icMoreVerticalBlack") From 78c6fd4a61eebe4d844afe41fb7aad056fbfe6b1 Mon Sep 17 00:00:00 2001 From: hyun99999 Date: Sat, 26 Mar 2022 23:22:40 +0900 Subject: [PATCH 4/9] =?UTF-8?q?[Del]=20#383=20-=20=EC=8A=A4=ED=8C=8C?= =?UTF-8?q?=ED=81=AC=20=EC=82=AC=EC=9A=A9=EA=B0=80=EC=9D=B4=EB=93=9C=20?= =?UTF-8?q?=EC=82=AD=EC=A0=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Storyboards/Mypage/Withdrawal.storyboard | 18 +++ .../Cells/Mypage/MypageDefaultTVC.swift | 6 - .../ViewControllers/Mypage/MypageVC.swift | 13 +- .../ViewControllers/Mypage/WithdrawalVC.swift | 129 +++++++++++++++++- 4 files changed, 154 insertions(+), 12 deletions(-) diff --git a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard index a8e49798..810418b2 100644 --- a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard +++ b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard @@ -16,8 +16,23 @@ + + + + + Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda. + + + + + + + + + + @@ -26,6 +41,9 @@ + + + diff --git a/Spark-iOS/Spark-iOS/Source/Cells/Mypage/MypageDefaultTVC.swift b/Spark-iOS/Spark-iOS/Source/Cells/Mypage/MypageDefaultTVC.swift index 71c852ec..51aae64e 100644 --- a/Spark-iOS/Spark-iOS/Source/Cells/Mypage/MypageDefaultTVC.swift +++ b/Spark-iOS/Spark-iOS/Source/Cells/Mypage/MypageDefaultTVC.swift @@ -83,12 +83,6 @@ extension MypageDefaultTVC { arrowImageView.isHidden = false versionLabel.isHidden = true withdrawalButton.isHidden = true - case .sparkGuide: - titleLabel.text = "스파크 사용 가이드" - titleLabel.isHidden = false - arrowImageView.isHidden = false - versionLabel.isHidden = true - withdrawalButton.isHidden = true case .tos: titleLabel.text = "약관 및 정책" titleLabel.isHidden = false diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift index 23d0aa80..d2522c54 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/MypageVC.swift @@ -17,7 +17,6 @@ public enum MypageRow: Int { case profile // 프로필 case notification // 알림 case contact // 문의하기 - case sparkGuide // 스파크 사용 가이드 case tos // Terms of service terms of use. 약관 및 정책 case openSourceLibrary // 오픈소스 라이브러리 case version // 버전 정보 @@ -184,7 +183,7 @@ extension MypageVC: UITableViewDelegate { safariVC.modalPresentationStyle = .pageSheet present(safariVC, animated: true, completion: nil) - } else if indexPath.row == 1 { + } else if indexPath.row == 0 { // 약관 및 정책 guard let url = URL(string: Const.URL.tosURL) else { return } let safariVC = SFSafariViewController(url: url) @@ -192,7 +191,7 @@ extension MypageVC: UITableViewDelegate { safariVC.modalPresentationStyle = .pageSheet present(safariVC, animated: true, completion: nil) - } else if indexPath.row == 2 { + } else if indexPath.row == 1 { // 오픈소스 라이브러리 guard let url = URL(string: Const.URL.openSourceLibraryURL) else { return } let safariVC = SFSafariViewController(url: url) @@ -200,6 +199,12 @@ extension MypageVC: UITableViewDelegate { safariVC.modalPresentationStyle = .pageSheet present(safariVC, animated: true, completion: nil) + } else if indexPath.row == 2 { + // FIXME: - 탈퇴 연습 + // 버전정보 + guard let withdrawalVC = UIStoryboard(name: Const.Storyboard.Name.withdrawal, bundle: nil).instantiateViewController(withIdentifier: Const.ViewController.Identifier.withdrawal) as? WithdrawalVC else { return } + + navigationController?.pushViewController(withdrawalVC, animated: true) } else if indexPath.row == 3 { // logout guard let loginVC = UIStoryboard(name: Const.Storyboard.Name.login, bundle: nil).instantiateViewController(withIdentifier: Const.ViewController.Identifier.login) as? LoginVC else { return } @@ -255,7 +260,7 @@ extension MypageVC: UITableViewDataSource { return rowOfSection.count case .service: - rowOfSection = [.sparkGuide, .tos, .openSourceLibrary, .version, .logout, .withdrawal] + rowOfSection = [.tos, .openSourceLibrary, .version, .logout, .withdrawal] return rowOfSection.count } diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift index d53b8ab2..896a60b4 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift @@ -12,13 +12,26 @@ class WithdrawalVC: UIViewController { // MARK: - Properties private let customNavigationBar = LeftButtonNavigaitonBar() + private let titleLabel = UILabel() + private let topDividerLine = UIView() + private let subtitleLabel = UILabel() + private let firstCircleLabel = UILabel() + private let firstTextView = UITextView() + private let secondCircleLabel = UILabel() + private let secondTextView = UITextView() + private let bottomDividerLine = UIView() + private let checkboxButton = UIButton() + private let withdrawalLabel = UILabel() + private let withdrawalButton = BottomButton() // MARK: - View Life Cycle override func viewDidLoad() { super.viewDidLoad() - + setUI() + setLayout() + setAddTargets() } } @@ -28,7 +41,54 @@ extension WithdrawalVC { private func setUI() { customNavigationBar.title("회원 탈퇴") .leftButtonImage("icBackWhite") - .leftButtonAction(<#T##clousure: (() -> Void)?##(() -> Void)?##() -> Void#>) + .leftButtonAction { + self.navigationController?.popViewController(animated: true) + } + + titleLabel.font = .h3Subtitle + titleLabel.textColor = .sparkBlack + titleLabel.text = "회원 탈퇴 유의사항" + + topDividerLine.backgroundColor = .sparkDarkGray + + subtitleLabel.font = .p1TitleLight + subtitleLabel.textColor = .sparkDarkGray + subtitleLabel.text = "회원 탈퇴 시," + + firstTextView.font = .p1TitleLight + firstTextView.text = "진행 중인 모든 습관방에서 나가지며, 그동안의 습관 기록들은 전부 삭제되어 복구 불가능합니다." + firstCircleLabel.font = .p1TitleLight + firstCircleLabel.text = " • " + firstCircleLabel.textColor = .sparkDarkGray + + secondTextView.font = .p1TitleLight + secondTextView.text = " 최근 7일 동안의 습관 인증, 친구에게 보낸 스파크, 좋아요 등 타 스파커들에게 공유된 정보는 각가의 습관방에 귀속되어, 생성일로부터 7일 동안 보관 후 삭제됩니다." + secondCircleLabel.font = .p1TitleLight + secondCircleLabel.text = " • " + secondCircleLabel.textColor = .sparkDarkGray + + bottomDividerLine.backgroundColor = .sparkDarkGray + + checkboxButton.setImage(UIImage(named: "btnCheckBoxDefault"), for: .normal) + checkboxButton.setImage(UIImage(named: "btnCheckBox"), for: .selected) + + withdrawalLabel.font = .p2Subtitle + withdrawalLabel.textColor = .sparkDarkGray + withdrawalLabel.text = "위의 사항을 숙지하였으며, 이에 동의합니다." + + withdrawalButton.setTitle("탈퇴하기") + .setDisable() + } + + private func setAddTargets() { + withdrawalButton.addTarget(self, action: #selector(touchWithdrawalButtonButton), for: .touchUpInside) + } + + // MARK: - @Objc Methods + + @objc + private func touchWithdrawalButtonButton() { + // TODO: - 탈퇴하기 서버통신 } } @@ -36,6 +96,71 @@ extension WithdrawalVC { extension WithdrawalVC { private func setLayout() { + view.addSubviews([customNavigationBar, titleLabel, topDividerLine, subtitleLabel, firstCircleLabel, firstTextView, secondCircleLabel, secondTextView, bottomDividerLine, checkboxButton, withdrawalLabel, withdrawalButton]) + + customNavigationBar.snp.makeConstraints { + $0.leading.trailing.equalToSuperview() + $0.top.equalTo(view.safeAreaLayoutGuide.snp.top) + $0.height.equalTo(60) + } + + titleLabel.snp.makeConstraints { + $0.top.equalTo(customNavigationBar.snp.bottom).offset(24) + $0.leading.equalToSuperview().inset(20) + } + + topDividerLine.snp.makeConstraints { + $0.top.equalTo(titleLabel.snp.bottom).offset(23.5) + $0.leading.trailing.equalToSuperview().inset(20) + $0.height.equalTo(0.5) + } + + subtitleLabel.snp.makeConstraints { + $0.top.equalTo(topDividerLine.snp.bottom).offset(16) + $0.leading.equalToSuperview().inset(20) + } + + firstCircleLabel.snp.makeConstraints { + $0.leading.equalTo(subtitleLabel.snp.leading) + $0.top.equalTo(subtitleLabel.snp.bottom).offset(20) + } + + firstTextView.snp.makeConstraints { + $0.top.equalTo(firstCircleLabel.snp.top) + $0.leading.equalTo(firstCircleLabel.snp.trailing) + $0.trailing.equalToSuperview().inset(20) + } + + secondCircleLabel.snp.makeConstraints { + $0.leading.equalTo(titleLabel.snp.leading) + $0.top.equalTo(firstTextView.snp.bottom).offset(20) + } + + secondTextView.snp.makeConstraints { + $0.top.equalTo(secondCircleLabel.snp.top) + $0.leading.equalTo(secondCircleLabel.snp.trailing) + $0.trailing.equalToSuperview().inset(20) + } + + topDividerLine.snp.makeConstraints { + $0.top.equalTo(secondTextView.snp.bottom).offset(17.5) + $0.leading.trailing.equalToSuperview().inset(20) + $0.height.equalTo(0.5) + } + + checkboxButton.snp.makeConstraints { + $0.top.equalTo(topDividerLine.snp.bottom).offset(25) + $0.leading.equalToSuperview().inset(20) + } + + withdrawalLabel.snp.makeConstraints { + $0.leading.equalTo(checkboxButton.snp.trailing).offset(8) + $0.centerY.equalTo(checkboxButton.snp.centerY) + } + withdrawalButton.snp.makeConstraints { + $0.centerX.equalTo(view.safeAreaLayoutGuide) + $0.bottom.equalTo(view.safeAreaLayoutGuide).inset(20) + } } } From 6ea3fd0ab8e418a8ebd4fcae80850082a1248232 Mon Sep 17 00:00:00 2001 From: hyun99999 Date: Sun, 27 Mar 2022 02:47:38 +0900 Subject: [PATCH 5/9] =?UTF-8?q?[Feat]=20#383=20-=20=EC=8A=A4=ED=86=A0?= =?UTF-8?q?=EB=A6=AC=EB=B3=B4=EB=93=9C=EB=A5=BC=20=EA=B8=B0=EB=B0=98?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=ED=9A=8C=EC=9B=90=ED=83=88=ED=87=B4=20?= =?UTF-8?q?=EB=B7=B0=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Storyboards/Mypage/Withdrawal.storyboard | 133 ++++++++++++++++-- .../ViewControllers/Mypage/WithdrawalVC.swift | 127 +++++------------ 2 files changed, 156 insertions(+), 104 deletions(-) diff --git a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard index 810418b2..822ae9ed 100644 --- a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard +++ b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard @@ -4,6 +4,7 @@ + @@ -17,33 +18,137 @@ - - + + - Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda. - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + + + diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift index 896a60b4..a4595e0e 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Mypage/WithdrawalVC.swift @@ -11,18 +11,18 @@ class WithdrawalVC: UIViewController { // MARK: - Properties - private let customNavigationBar = LeftButtonNavigaitonBar() - private let titleLabel = UILabel() - private let topDividerLine = UIView() - private let subtitleLabel = UILabel() - private let firstCircleLabel = UILabel() - private let firstTextView = UITextView() - private let secondCircleLabel = UILabel() - private let secondTextView = UITextView() - private let bottomDividerLine = UIView() - private let checkboxButton = UIButton() - private let withdrawalLabel = UILabel() - private let withdrawalButton = BottomButton() + @IBOutlet weak var customNavigationBar: LeftButtonNavigaitonBar! + @IBOutlet weak var titleLabel: UILabel! + @IBOutlet weak var topDividerLine: UIView! + @IBOutlet weak var subtitleLabel: UILabel! + @IBOutlet weak var firstCircleLabel: UILabel! + @IBOutlet weak var firstTextLabel: UILabel! + @IBOutlet weak var secondCircleLabel: UILabel! + @IBOutlet weak var secondTextLabel: UILabel! + @IBOutlet weak var bottomDividerLine: UIView! + @IBOutlet weak var checkboxButton: UIButton! + @IBOutlet weak var withdrawalLabel: UILabel! + @IBOutlet weak var withdrawalButton: BottomButton! // MARK: - View Life Cycle @@ -30,7 +30,6 @@ class WithdrawalVC: UIViewController { super.viewDidLoad() setUI() - setLayout() setAddTargets() } } @@ -55,16 +54,24 @@ extension WithdrawalVC { subtitleLabel.textColor = .sparkDarkGray subtitleLabel.text = "회원 탈퇴 시," - firstTextView.font = .p1TitleLight - firstTextView.text = "진행 중인 모든 습관방에서 나가지며, 그동안의 습관 기록들은 전부 삭제되어 복구 불가능합니다." + firstTextLabel.font = .p1TitleLight + firstTextLabel.textColor = .sparkDarkGray + firstTextLabel.text = "진행 중인 모든 습관방에서 나가지며, 그동안의 습관 기록들은 전부 삭제되어 복구 불가능합니다." + firstTextLabel.numberOfLines = 0 + firstTextLabel.lineBreakMode = .byCharWrapping + firstCircleLabel.font = .p1TitleLight - firstCircleLabel.text = " • " + firstCircleLabel.text = " •" firstCircleLabel.textColor = .sparkDarkGray - secondTextView.font = .p1TitleLight - secondTextView.text = " 최근 7일 동안의 습관 인증, 친구에게 보낸 스파크, 좋아요 등 타 스파커들에게 공유된 정보는 각가의 습관방에 귀속되어, 생성일로부터 7일 동안 보관 후 삭제됩니다." + secondTextLabel.font = .p1TitleLight + secondTextLabel.textColor = .sparkDarkGray + secondTextLabel.text = "최근 7일 동안의 습관 인증, 친구에게 보낸 스파크, 좋아요 등 타 스파커들에게 공유된 정보는 각가의 습관방에 귀속되어, 생성일로부터 7일 동안 보관 후 삭제됩니다." + secondTextLabel.numberOfLines = 0 + secondTextLabel.lineBreakMode = .byCharWrapping + secondCircleLabel.font = .p1TitleLight - secondCircleLabel.text = " • " + secondCircleLabel.text = " •" secondCircleLabel.textColor = .sparkDarkGray bottomDividerLine.backgroundColor = .sparkDarkGray @@ -77,11 +84,13 @@ extension WithdrawalVC { withdrawalLabel.text = "위의 사항을 숙지하였으며, 이에 동의합니다." withdrawalButton.setTitle("탈퇴하기") + .setUI(.pink) .setDisable() } private func setAddTargets() { withdrawalButton.addTarget(self, action: #selector(touchWithdrawalButtonButton), for: .touchUpInside) + checkboxButton.addTarget(self, action: #selector(touchCheckboxButton), for: .touchUpInside) } // MARK: - @Objc Methods @@ -90,77 +99,15 @@ extension WithdrawalVC { private func touchWithdrawalButtonButton() { // TODO: - 탈퇴하기 서버통신 } -} - -// MARK: - Layout - -extension WithdrawalVC { - private func setLayout() { - view.addSubviews([customNavigationBar, titleLabel, topDividerLine, subtitleLabel, firstCircleLabel, firstTextView, secondCircleLabel, secondTextView, bottomDividerLine, checkboxButton, withdrawalLabel, withdrawalButton]) - - customNavigationBar.snp.makeConstraints { - $0.leading.trailing.equalToSuperview() - $0.top.equalTo(view.safeAreaLayoutGuide.snp.top) - $0.height.equalTo(60) - } - - titleLabel.snp.makeConstraints { - $0.top.equalTo(customNavigationBar.snp.bottom).offset(24) - $0.leading.equalToSuperview().inset(20) - } - - topDividerLine.snp.makeConstraints { - $0.top.equalTo(titleLabel.snp.bottom).offset(23.5) - $0.leading.trailing.equalToSuperview().inset(20) - $0.height.equalTo(0.5) - } - - subtitleLabel.snp.makeConstraints { - $0.top.equalTo(topDividerLine.snp.bottom).offset(16) - $0.leading.equalToSuperview().inset(20) - } - - firstCircleLabel.snp.makeConstraints { - $0.leading.equalTo(subtitleLabel.snp.leading) - $0.top.equalTo(subtitleLabel.snp.bottom).offset(20) - } - - firstTextView.snp.makeConstraints { - $0.top.equalTo(firstCircleLabel.snp.top) - $0.leading.equalTo(firstCircleLabel.snp.trailing) - $0.trailing.equalToSuperview().inset(20) - } - - secondCircleLabel.snp.makeConstraints { - $0.leading.equalTo(titleLabel.snp.leading) - $0.top.equalTo(firstTextView.snp.bottom).offset(20) - } - - secondTextView.snp.makeConstraints { - $0.top.equalTo(secondCircleLabel.snp.top) - $0.leading.equalTo(secondCircleLabel.snp.trailing) - $0.trailing.equalToSuperview().inset(20) - } - - topDividerLine.snp.makeConstraints { - $0.top.equalTo(secondTextView.snp.bottom).offset(17.5) - $0.leading.trailing.equalToSuperview().inset(20) - $0.height.equalTo(0.5) - } - - checkboxButton.snp.makeConstraints { - $0.top.equalTo(topDividerLine.snp.bottom).offset(25) - $0.leading.equalToSuperview().inset(20) - } - - withdrawalLabel.snp.makeConstraints { - $0.leading.equalTo(checkboxButton.snp.trailing).offset(8) - $0.centerY.equalTo(checkboxButton.snp.centerY) - } - - withdrawalButton.snp.makeConstraints { - $0.centerX.equalTo(view.safeAreaLayoutGuide) - $0.bottom.equalTo(view.safeAreaLayoutGuide).inset(20) + + @objc + private func touchCheckboxButton() { + if checkboxButton.isSelected { + checkboxButton.isSelected = false + withdrawalButton.setDisable() + } else { + checkboxButton.isSelected = true + withdrawalButton.setAble() } } } From c5b1134b57d72b63af88519b148e11e00a2d2486 Mon Sep 17 00:00:00 2001 From: hyun99999 Date: Sun, 27 Mar 2022 02:50:26 +0900 Subject: [PATCH 6/9] =?UTF-8?q?[Feat]=20#383=20-=20=ED=9A=8C=EC=9B=90?= =?UTF-8?q?=ED=83=88=ED=87=B4=20=EB=8B=A4=EC=9D=B4=EC=96=BC=EB=A1=9C?= =?UTF-8?q?=EA=B7=B8=20=EC=B6=94=EA=B0=80=20=EB=B0=8F=20=ED=94=84=EB=A1=9C?= =?UTF-8?q?=ED=95=84=20=EC=88=98=EC=A0=95=20=EB=8B=A4=EC=9D=B4=EC=96=BC?= =?UTF-8?q?=EB=A1=9C=EA=B7=B8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Source/ViewControllers/Dialogue/DialogueVC.swift | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Spark-iOS/Spark-iOS/Source/ViewControllers/Dialogue/DialogueVC.swift b/Spark-iOS/Spark-iOS/Source/ViewControllers/Dialogue/DialogueVC.swift index 6148d1e2..650484de 100644 --- a/Spark-iOS/Spark-iOS/Source/ViewControllers/Dialogue/DialogueVC.swift +++ b/Spark-iOS/Spark-iOS/Source/ViewControllers/Dialogue/DialogueVC.swift @@ -20,6 +20,7 @@ enum DialogueType { case leaveWaitingRoom case createRoom case exitEditProfile + case withdrawal } class DialogueVC: UIViewController { @@ -119,6 +120,15 @@ extension DialogueVC { 프로필 수정이 완료되지 않았습니다. 그래도 나가시겠습니까? """ + resetOrExitLabel.textColor = .sparkDarkPinkred + + case .withdrawal: + guideLabel.text = """ + 정말 Spark를 탈퇴할 건가요? + 더 멋진 서비스가 되어 기다리고 있을게요. + """ + resetOrExitLabel.text = "탈퇴하기" + resetOrExitLabel.textColor = .sparkDarkPinkred case .none: print("dialogueType을 지정해주세요") From 0116b1bcd6ff916970a268b4de23e1df6558fa28 Mon Sep 17 00:00:00 2001 From: hyun99999 Date: Sun, 27 Mar 2022 03:38:15 +0900 Subject: [PATCH 7/9] =?UTF-8?q?[Feat]=20#383=20-=20=ED=83=88=ED=87=B4=20?= =?UTF-8?q?=EB=A1=9C=EC=A7=81=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Storyboards/Mypage/Withdrawal.storyboard | 26 +++++++++++------- .../ViewControllers/Mypage/WithdrawalVC.swift | 27 ++++++++++++++++--- 2 files changed, 40 insertions(+), 13 deletions(-) diff --git a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard index 822ae9ed..d42ea135 100644 --- a/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard +++ b/Spark-iOS/Spark-iOS/Resource/Storyboards/Mypage/Withdrawal.storyboard @@ -52,25 +52,31 @@ -