From 219e63e3618e8cfead76b69f5402d6f86120ae25 Mon Sep 17 00:00:00 2001 From: ethanswift Date: Mon, 18 May 2020 20:58:39 +0430 Subject: [PATCH 1/4] file added --- FightPandemics.xcodeproj/project.pbxproj | 15 ++++++++-- .../Post/CreatePost/TabBarUI/TabBarUI.swift | 27 ++++++++++++++++++ .../Group 1087.imageset/Contents.json | 23 +++++++++++++++ .../Group 1087.imageset/Group 1087.png | Bin 0 -> 555 bytes .../Group 1087.imageset/Group 1087@2x.png | Bin 0 -> 1038 bytes .../Group 1087.imageset/Group 1087@3x.png | Bin 0 -> 1434 bytes .../home (1).imageset/Contents.json | 23 +++++++++++++++ .../home (1).imageset/home (1).png | Bin 0 -> 445 bytes .../home (1).imageset/home (1)@2x.png | Bin 0 -> 714 bytes .../home (1).imageset/home (1)@3x.png | Bin 0 -> 920 bytes .../inbox.imageset/Contents.json | 23 +++++++++++++++ .../Assets.xcassets/inbox.imageset/inbox.png | Bin 0 -> 481 bytes .../inbox.imageset/inbox@2x.png | Bin 0 -> 743 bytes .../inbox.imageset/inbox@3x.png | Bin 0 -> 953 bytes .../Contents.json | 23 +++++++++++++++ .../plus-circle-solid copy.png | Bin 0 -> 1352 bytes .../plus-circle-solid copy@2x.png | Bin 0 -> 2454 bytes .../plus-circle-solid copy@3x.png | Bin 0 -> 3612 bytes .../user-circle.imageset/Contents.json | 23 +++++++++++++++ .../user-circle.imageset/user-circle.png | Bin 0 -> 643 bytes .../user-circle.imageset/user-circle@2x.png | Bin 0 -> 1203 bytes .../user-circle.imageset/user-circle@3x.png | Bin 0 -> 1774 bytes 22 files changed, 155 insertions(+), 2 deletions(-) create mode 100644 FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift create mode 100644 FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Contents.json create mode 100644 FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087.png create mode 100644 FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087@2x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087@3x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/home (1).imageset/Contents.json create mode 100644 FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1).png create mode 100644 FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1)@2x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1)@3x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/inbox.imageset/Contents.json create mode 100644 FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox.png create mode 100644 FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox@2x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox@3x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/Contents.json create mode 100644 FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy.png create mode 100644 FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy@2x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy@3x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/user-circle.imageset/Contents.json create mode 100644 FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle.png create mode 100644 FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle@2x.png create mode 100644 FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle@3x.png diff --git a/FightPandemics.xcodeproj/project.pbxproj b/FightPandemics.xcodeproj/project.pbxproj index d5d77de..0224539 100644 --- a/FightPandemics.xcodeproj/project.pbxproj +++ b/FightPandemics.xcodeproj/project.pbxproj @@ -65,10 +65,10 @@ 2FB342042468FFCC007E397F /* Navigator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FB342032468FFCC007E397F /* Navigator.swift */; }; 2FB34207246901DA007E397F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2FB34205246901DA007E397F /* LaunchScreen.storyboard */; }; 49D0B0B42467BC6E007B3762 /* FightPandemicsUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49D0B0B32467BC6E007B3762 /* FightPandemicsUITests.swift */; }; - C0E5EDF824705CC200F42319 /* PostVisibilitySelectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0E5EDF724705CC200F42319 /* PostVisibilitySelectionView.swift */; }; - C0E5EDFB2470AA4E00F42319 /* Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0E5EDFA2470AA4E00F42319 /* Duration.swift */; }; 7DEF116C7BC2A4F6BA56F4F0 /* Pods_FightPandemics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AC14540D23239E4E26F554CF /* Pods_FightPandemics.framework */; }; C013ACDA246FF3E200F22BE7 /* OfferRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = C013ACD9246FF3E200F22BE7 /* OfferRequest.swift */; }; + C018DD782472EF2900EEB3FC /* TabBarUI.swift in Sources */ = {isa = PBXBuildFile; fileRef = C018DD772472EF2900EEB3FC /* TabBarUI.swift */; }; + C0E5EDFB2470AA4E00F42319 /* Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0E5EDFA2470AA4E00F42319 /* Duration.swift */; }; DC807E59246FAC8B00046D67 /* CreatePostEntitySelectionModal.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC807E58246FAC8B00046D67 /* CreatePostEntitySelectionModal.swift */; }; DC807E5B246FB02300046D67 /* Entity.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC807E5A246FB02300046D67 /* Entity.swift */; }; DC807E5F246FB1C000046D67 /* Organization.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC807E5E246FB1C000046D67 /* Organization.swift */; }; @@ -172,6 +172,7 @@ 74D3F30914E75C1D9DB78030 /* Pods-FightPandemics.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FightPandemics.debug.xcconfig"; path = "Target Support Files/Pods-FightPandemics/Pods-FightPandemics.debug.xcconfig"; sourceTree = ""; }; AC14540D23239E4E26F554CF /* Pods_FightPandemics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FightPandemics.framework; sourceTree = BUILT_PRODUCTS_DIR; }; C013ACD9246FF3E200F22BE7 /* OfferRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OfferRequest.swift; sourceTree = ""; }; + C018DD772472EF2900EEB3FC /* TabBarUI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabBarUI.swift; sourceTree = ""; }; C0E5EDF724705CC200F42319 /* PostVisibilitySelectionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostVisibilitySelectionView.swift; sourceTree = ""; }; C0E5EDFA2470AA4E00F42319 /* Duration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Duration.swift; sourceTree = ""; }; DC807E58246FAC8B00046D67 /* CreatePostEntitySelectionModal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CreatePostEntitySelectionModal.swift; sourceTree = ""; }; @@ -297,6 +298,7 @@ 2F0B5162246E0DF200BE42BC /* CreatePost */ = { isa = PBXGroup; children = ( + C018DD762472EE0800EEB3FC /* TabBarUI */, C0E5EDF92470AA2D00F42319 /* Duration */, 2F426B3A2472C2A3007A4796 /* Visibility */, C013ACD8246FF3C500F22BE7 /* OfferRequest */, @@ -526,6 +528,14 @@ path = OfferRequest; sourceTree = ""; }; + C018DD762472EE0800EEB3FC /* TabBarUI */ = { + isa = PBXGroup; + children = ( + C018DD772472EF2900EEB3FC /* TabBarUI.swift */, + ); + path = TabBarUI; + sourceTree = ""; + }; C0E5EDF92470AA2D00F42319 /* Duration */ = { isa = PBXGroup; children = ( @@ -787,6 +797,7 @@ 2F0B5167246E0DF200BE42BC /* CreatePostHeader.swift in Sources */, DC807E59246FAC8B00046D67 /* CreatePostEntitySelectionModal.swift in Sources */, 2F0C3C672471DE660002B384 /* UINavigationBar+FightPandemics.swift in Sources */, + C018DD782472EF2900EEB3FC /* TabBarUI.swift in Sources */, 0322FA13246E23D0009507D7 /* TagView.swift in Sources */, 2F72CE5F2468793C00750785 /* FightPandemicsAPI.swift in Sources */, DC807E6A247027C700046D67 /* JSONFileReader.swift in Sources */, diff --git a/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift b/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift new file mode 100644 index 0000000..111ffc5 --- /dev/null +++ b/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift @@ -0,0 +1,27 @@ +// +// TabBarUI.swift +// FightPandemics +// +// Created by ehsan sat on 5/18/20. +// +// Copyright (c) 2020 FightPandemics +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +import Foundation diff --git a/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Contents.json b/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Contents.json new file mode 100644 index 0000000..3da5393 --- /dev/null +++ b/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "Group 1087.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "Group 1087@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "Group 1087@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087.png b/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087.png new file mode 100644 index 0000000000000000000000000000000000000000..855c8afa34f268f83ac058e7b75f0715d8f38481 GIT binary patch literal 555 zcmV+`0@VG9P)visZjzI{A{F4$(X83-ZlG);RLnmlJ1Muc&M*ZFunj;X>7eXv@staiKYGX$HD z3_;_~T{YKJOM@zK0o?ERc9JB40xdh8&cbn=qrP~%-7?h0cN;^7J(QsmxL&V&2=T3I zQQ2_#6o-2p!DuwP)4vJ%5aPKmjBPj^F0ki`C4e*THxDuKh>xtB16V)}Y`5DT7z%lA zb9qFo)#~#LCSRzbA?#Ol-P7rmUls{WTIj>_1=KNUD4jrrRsqB$r$kIwSgtpKHwBRX zV4ml7)$4~2jL|H*!l1j<4i^*aKo-{IT%_h^D`2PtrLef|88tBeYbc8>o=hfD0few2 z`Xx>opeRi10&$uAGni`Y4CK4l0FkP^ZRdbL42m z;rPBUlNXif9*`-gnkr|kdjP2O1E_&r%EUG=`$!>Wr7MI)fvP+O)Tr1bi!6J9%aTb8 tZ{OLga)@PUC9sL<(0>84L8=A1{wII4*tf~5!#e-~002ovPDHLkV1mx$>*N3c literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087@2x.png b/FightPandemics/Resources/Assets.xcassets/Group 1087.imageset/Group 1087@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..36715b6e9faeb34f031dc5b00866dbf8ed56ac51 GIT binary patch literal 1038 zcmV+p1o8WcP)`EgsUT3n5ebQxP?8FgR1gs2DWrr7fC^$NxLgJ2>%hN&NO{~h ziEV9`^&>BnPg*&%p0z*E>|Ks^Z3)(>O+zdKEt-L7B*B}T z8w-~vnytC*qP>842gKP*9(O{vgb+E%+pwN?9CY?hPft5E55cRes~leRM3eK2(L#HK z6&y-{|AA$+g8CeguV8+jQwkV5a0k#4i68{VYNK3?4S?Z)st_OWPaxfM z@E1o>>SAj)4~+qHTi}^83Gn`Br&Jc5m2(E0e>h%z-o>pn!0(&i^K{9 z?DUzqHvm?%C(D?J-&7qzUkHC5hQNCG6w-Yu!8BlkZYT(0QHHp`zn@qbo12?|RULs% z+6@H+o0K7N#96X@aB%QX)e*|d-KGoyCu;ywt(|G3*ecl#vzXIM9s^w*WaeFyG(bBg3CX0C~?oO(s(H zDBUn8QG-ZWavx#(BP|$y67^fkOI5_p7qg`@?ktt^00 z4HuP^OXJ!~i&Da`gz>7FHa0f$#bVJ*O_0H^#oz{gE`PXa4lMG5=5B3mx%_ay z0%meaj-z9^Z$F~oR7ZcoFWn`QjIC}(l`Uq31JV^vDH@H2iNK(phGeSxAn*EkKsBOb zl}L=n1*ewWnU-WKf)Y`-=q_AXfHiVaHA8+8^!RLjj;n;FAvqO69bxk4C%7!X84y4k_?T>;Dra8>}b0+LTaD9H*4E65+8?Aw>N)%ef_@KZ2qPhph6kJBp)9i8z8lfzaFKBkLzY_ZS8iNVb8HowAM4z6Xdbn-S^wEXHPx6#_BEpxKmo3b> zZVHL2v3r-2LA|`ZG!G9CeaZn=gl(m&)$ty`-}x8P5si_4-zEmngMr&ZeUIYNg^C|j zM#K{4xr)yJ&lcBE&1aI;YITrC{j@#sa2=6B19)z)uC6w-sCdPqBX@>QC|pg9yiYj+ z-)xY9IBO0_*VB@&7(VQhnJin;E=>XY+ihGe>3J5?B4ItpevnL7VeWlBI5@bcDTAer zsnUxuk^>BQlM=#_3ZI{!qf|=as?UNf1B3=3`-LX0{0I#U$Ppz(NWy1lXAQW1eW9+x zRiB145C_xr!je@_vSd{(U#zGgvLiqcn~?UMpxz40-xu5Y98~EjRW6h)gQpS5c7#VR zHY{zj#3x}b-A1qi4AgPaWJlmRjh~ZXIi_HX4Xwp1CL}Bw0ELn5(i{P+N0&XiKyl4h z%0t3Y(giZRa(ScE>9G4MO4+9UkTCnS!ZW2+Xzl*=_ z5GCd1<>lSDwhpVav|HiG1I;&lp=^g@;6&_#{8`1A(n4=oRG_%V>$Rz!1J&??g}l|H zazN^5Ea8n{A)<*h@s+az#x~SXSZgz3T%iS9M5@FZW#-S2}*JDbEQWNg=dLjEGcwiG?!YWYaQb_>kC`1@jG?s7( z*VotoQaRuXWq(W!*l2}JI}XSGqY^;!5~a0y9PC>D3Kn8BVO+fD1#mL9f@P8bC)(h; z6&h_*2_Q)rWy;jX!CEGbh-VuzDGJ!-c_aiI<3h-e-dp;?2T1~B1wq>T`V@mv#3Qup zunn0MfvAuaV$?TrZHI($(lC%hCi-A&9w7!CZ36N`!cid;pf_)GIcvc2)A5K3jA2bq ze10=!h{r&-0mo0mQBp=(`~3VoHdZtXTwPu9;CsR&>wx2gYspe3VS5PDeXUA`fd`%Q zON2*>!pRea^>#}-bLDw_R}^U-m00#L#SDoWS36*I47$8l2eg|bf$c1oh#j<9Eo#? z25Np2m$#XgbmokBhW53Y{1&Anuju0>@HR=_W*XAD5FQ7+f%*iG^Qt)9%La)J)zC1Z zOwq@3_J<>ksOx80%afAMop2FILV6(xGi*sO3}J>1>4hT9h#~DS9ASou^gtp+RANODX0?ROV literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/home (1).imageset/Contents.json b/FightPandemics/Resources/Assets.xcassets/home (1).imageset/Contents.json new file mode 100644 index 0000000..d23c124 --- /dev/null +++ b/FightPandemics/Resources/Assets.xcassets/home (1).imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "home (1).png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "home (1)@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "home (1)@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1).png b/FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1).png new file mode 100644 index 0000000000000000000000000000000000000000..f09469d4bb8bc141838e93d68f2e4fa88b1ec49b GIT binary patch literal 445 zcmV;u0Yd(XP)E;kFbt9BdDSU9u2bfDZZ%DlbIvzXRrP)U5(Gi1vlmN6k|e9P zZ4VOQ3;aA93UR<$%r0e;W!Y=jb=&cPb1Gq{fU*BUS!--}hG9gG_xUhC|&nGnJ8*L7WoWc0vh zQxCKx*bV3&L3G!7iR6tI8!1S${=!|O}wAnpK_KnGC?2!QDgb@igKX%UqM8U8a&z*^TwA}&oKd|{T1fs*?@HJ5^ z!Tn3P=R0ZQtR=!QY-~200I!}Zhw?$U+wJpv5Cn}{tv0kQ>pnBR4~q=W=_n+T_&>FK z_abAfHM&eSXkxBLLhkvq)?rt zrr)J-Dvfu$-JJuWD+MzBKp>(E!}oo*s0XXWq{ImfAX3@EIh~jPmju@DLr@}N0)>- zNNl&;QLopFvhw82amf&$B0H`mB(5YRt|TO`BqTlu3ETtf9U$nP!SyD}$6NW$`Yi}u z`d5TL1DDVW=l`qf8gfthj4(OQ86)WB0$V2+U3Luj3q^DztLnwVkkQW$V5V wz(`i~sXs9Oo#*Nsk9I*~3T*ffnp8pk7l`T;lOeLe5&!@I07*qoM6N<$g0?I^?f?J) literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1)@3x.png b/FightPandemics/Resources/Assets.xcassets/home (1).imageset/home (1)@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f80080f87c6ff933e1aad04552977e2485757a13 GIT binary patch literal 920 zcmV;J184k+P)x2qgIER~w#{C%NNut_6YMWD7#6!aMdz4pjvBfRcQ zrP7o%p)H&`oz5K!Kk*U3mv=hbXBJEI6h62bA0&ijn7 zw~{P2K3Rkq_Yto=nJE24Ih@+<_B8}dNFo4*{*GF{LE)@?KA*vpomKgy9XoHbv=-xVFg`3TG!?^uLr0J9NyH&OgwCr<2VP$o-| z{7LxQf#!SCJ%x-4mj@Lt9KBDrQ1Czb5F*kPkyfj9i_zUAMG)sR44ywI0+B>Sm|On? zY<`58&ypgM!U+N%Ne_>M!Qe9~617j5q>061aYc$G9or4Rm~A$jre8i7!2`+XDWTCS zf?rjzJUQ~qhu7^}2qs-5gI!!mM8t(eL|jNj#DzpeTu4O3g+xSL__!iGwzXo3!AmCY zlQ{Q<;>m;i1QsiPr5cUK<=NTUPeJYTvSHI%SQf&619D%(OQ7U~WO~}fwbPK->{rG2 zb3~tQrZ{6`z3OV;C$OQx%jY(|Kltw!hmKvXR%gx$o8AF`?VZ^C`_-LZ_5gTil;Vx$ u-a8Sln>c&e*XU>_#RPUyY&%<`ZRbB><+ol#dFi$Q0000@daYPHf?4|tvzfOIyUPOmGKa$Q}X=X=%@AfvS^ zSIN!@Wmz^6!tHh&vYx<6LiiYB?;|zyL^woUo64hy+&ijp5EmCk@wC}&&T=R|gQDje z?;InB;wuSc8YahPKz<}traXh;x0T^^tSrku@J$7&SV*PjjK^b55!CFV=Czum5LFG* zG&OD8ey1GB9uPDX)|bm=D5zebfKTr-YXKRK@Pf@dMNtA8m@g>Dzcr$jkdu0aLO1`WX-Jw~I^SM}Ri2qyajcvG#@U8b%gsj&e-hoj$G^MCjT XkDjO^?sune00000NkvXXu0mjfcqhWS literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox@2x.png b/FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..d4f130b1247bb915c5501d1b6ce991e23ac2ee84 GIT binary patch literal 743 zcmV?P)Nxk0$W%ngP)L0IX=Klxs&n?eFj z2ZU6r_*GHet?lFEd(f|usHUbyNkeDSYPIS#8jTUU*7SsSdJxX#UCZ;c&Pc4u>9H0mQb@yojOFMMDv19O--4635`-@Q@i#45f>S zBnlMn*>Vi`rgUX+Z-+4r!x*`)YibLm65W&Ny7)n074AuNTugGXboV4WE?x+%(mhF* zi*W}lb5D}xVkqz{+>@wWj8>AUdp;&wi^al93ySZzI>nyh6YlqWJ8h$JI-LkE2BKH@p}9G2D4hOEuruh&73Pw8i+pBK9c0b4nCA7z`$)V7*@7;C`~u zXh!yl76Q9*XYdf+&}C}1?$_ zKwQ{|jwji_crQjpctkUzF9brL@OOwU#~)tYA<~B3ztHVm;g2G1aL&It-<)^YR8v!< Z&l~G#F8d__G=KmA002ovPDHLkV1l8~PM`n) literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox@3x.png b/FightPandemics/Resources/Assets.xcassets/inbox.imageset/inbox@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..cbff02ee89d80b57285d592c437335bb37136d97 GIT binary patch literal 953 zcmV;q14jIbP)!;Y$SVGwLnZgVXwp=3C~t^>P| zbOoYVRx%u5w@FtbisiG0(`Hv-YWb|;wAmGyS`IawR=WZd%b|wTYFA)lInZ$0?Fw`) z2O3VhU4gD;U&C3kE6}m*Yd9-*1v-{b3}?-*K-Kbz;jGyes9HWU>}MAnnr*jR<;nu4 zaEn^4HlrBmcDp5=S{VWynS@l=1+C_5WjiZ>E&dpBt*F&8dvHiqt%J|A$h|jB8$4H?W!+ z8Zgp)rc)6_3Ac&#Iog?<+8;QN&%=J}roUe*H*vr|ND*u&ba|{P{q*$ILV%9cteV<> zsXQ^g!w`g4nN|g)R28o;Ikj=*15a(du3UZvbG%}|;E6q8PF=s$rjUD3KDBP9d9E9n zkjN+K^`d5hGeZ+sMRQ7s!~$mA zKKPqbM3Prpsl*2S)3E`2xw*MX{K=e4a|n2~TAj>_a7y`0+2fDgz>hnL&qp;azset& zpe{6}l*8HR3MzZsxh99%)`R$7kQPqq^qRMVx=@8O3JyZs`~9d7^YyD6^iQEJUz48< zTI=;**vrM%}00000NkvXXu0mjfG@-Pk literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/Contents.json b/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/Contents.json new file mode 100644 index 0000000..7b57407 --- /dev/null +++ b/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "plus-circle-solid copy.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "plus-circle-solid copy@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "plus-circle-solid copy@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy.png b/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy.png new file mode 100644 index 0000000000000000000000000000000000000000..9d296855fe8ba615ab91d0112bebc18ce6d26986 GIT binary patch literal 1352 zcmV-O1-JT%P)tQK~#7F#aM4_ zQ&ki{_rBM4mQf6BbcD6|XMC77LgZ6L5MtuGZ@SFIrO_EPllESu1SCtjuR4$BuFhPxpw}{aZl38`poW)dt0WO zfyrhDECddKq+>|B?{x3lK0EgpCG=cNI>fo?W>Wgqx$Siv9t&u&^-&Fcl?&_4zYkBGdTSV9WfRg73cLJg4{-We$CWD?qFUa^KjV_1jqE*JQ!IM~5B z5`eI9w(KPo-auHc&|66X@xkHE501-NPbk?#~0a6PHS#EOwNMw9f47xvl z2sL8QJ$6CX+V{zA7@sip6?e0_rhNA;*v-<6WtmctAy5#|+7*`jgEOFa=3me4NMWr6 z{LZWHl90(K^?tkC95cz=o^MHo77+r@I_OZpOE-U|#*Wun~;#Gtw1JhyW)0$&fjiN{+@1>#r!`pBxn``WX$S5l*4xGYV zy$)7loog5^)3>Y)eR;&WmBPENJ&D7fNVTLCZ!uHx0 z&RVjdv#5sbF1gaf4)ko<=}nG_6xKQ3LO0Ss?fJ|DV-xqd?5Y7@AGIv=_G{&^HL%bU zwHUp{$`-XI$|t2`#WaaY$vZkxJcm$-`YN@8*NM!wIt`p+Dr-S>S%RB2FXG?-oF}!_ z!q7#laFfzVqK0IgCg*<5B;WyI=kExM12FwpwY0hKTge%XEhT@g~j5TKJ*C z8+pl{*z9ArEJodF6ouO#ozImmq#1IPqmK>w*xPcm8EeZ9Wi0|Gz|@W>HLQj8$*T3t zzi~ZFaSmSk97C=0r7H$pzAE6)i+Kebr4@{13ZCWmbMV3HW;5g3%V?@+zzHw|Q_{b@!=XQI|CGzbdB7KD^B7(CIn`Du1B4I(z^pfXc9)>P!|#a0000< KMNUMnLSTY*5{fwh literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy@2x.png b/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..569598dcd228294fd1b309f567b654fccd598c4b GIT binary patch literal 2454 zcmV;H32F9;P)8C z6xS6#=k6b@*9%fgXd~OCb*d`fs30Y+>R7Eqe*)yG<;SYyD5QxAmHJYHN~APuQzfbr z)Yy5dLU2%!V%$P;U#bwNEyhg(O`E6zvG9;0L6$b9fC{@_v;LWTd(SLuX70?cXV){c zw)c}P@7|f6+57D|-#zEtdk4X1v~^|@ArP$$u|a^=1jt&b9R)TT&l4z8vMnt@q!I8m z7viFTU~+UYdIEd|g2&j-@0j4t`YP=S9+&YVq$d& zD?fv9R}+Jkwj<(wv=)){LXY~qI7*?n=8?#vI){%3blQ9TC;Km!d6Mlx~~VJ z8YoFrg)UbXL2Dn$bRdU5yJH(S1mUrb5!YR*T#QLU-#;_~Lr11R?L{RbB=6d8^#Z||ZG30xaeLRb zZK`Wg5IEoBoVj3)>J`8K*f3}w_3=$Qw*d>TQ`MGZ8WOoc*LZ=%zOgdVth~5<5%KI0o~g&*|ZDjyaM&@ z%c^uJRy5Q5wVfGT>+uUuK7A`CpdV)MFQdL#E?Ln|nT`}dRz&r5`Ldth-?AVS9mWs( zX+7^st1;$Fmo5u<_k$_$10>in<%h`6z~rG5MB=Q@KKN-p*>R{U)DexiD7cwUPyoZ0 zAc?AiwSrCS!7DG_z6y##6SQp$(XF+wZw)?76GOZ@s?z05KdcB=d z-lZOCUbT3lW~aDI=`)RHZJk#W3}MfwOT9b4!W=hVQ?_7L&ms8L>0V9wFTY^GB91ZRDE`|4$TOI#U zb9C;>q&5FKd4|iOcJ{oiE}Aa`yMfQ@izv(yd=Sx`f6)!yfHAkK1T;%Ze@@_8?k00n zPXtHJt-OYpxtk{hRU@~G)p-+|ctTLyy#Z^r&O?xk(LKF@6lqKub?8P8Q}SOU%mEZ| z9e6pa7r&fX(??0G-cYG!O~RS@xw=j6n=Vdgs z)XxMV(&Pt8W80Pg@nuk>ICowl2;sVnrgfK^!9SAPb*NEfEEWVw#)W2@xKEGi7L1uH?c zcIalXB1}U4=BOT())YzaeV`D8aGd_>1j&T;E#t9t1`_EpQ8PO9=@ntoAHlUl^j{}v zDYI?_d3j&1W-RE`8LN8<7QSUcM+WqLSthYQ_P$<8;- zq`Dc6W|AaN_hJ>G=5Ai*Rw{=7Vy!$B+>0<%K-thG;yE$)zHtS8ydILjez}wMGVGy|m-l*mgc8*8TCFDPMORdkIP_hK?vDTGF1uc)xnC{VG=uJ!;zvdnQ}{ zc|jY71r7=dU)(ccX-Atr6Kn~}=OE1DYTKW_(U8e5+)STzXQ$2P7D>Y1VtY1<7LG$0 z?FFTnCXsmTCm9;m79>fusl}o@(zX6{p#IrnpD9WZ3HCIfd_o=7u3g7{;OC+eVso+WThat`t=(VFg#k>cBonB zX6OQP65k?V*V54X-R)VJ&%#ZDyhCb^9XT?!adw zi`=mS|JuANaJzgzZk&J>3>wKz^%c=#VW*`c?fUirne-!;_Y(paDsafyaG$uz(TYemMIq2fnTN z)iKraP~gml2OxE;;AALP?i1AYPBj zhuVX3N;we!>S}#TxopeQA8v9%$O8LRDQn4to?ykHdJi{I@y*V3w_wmc8&L%iVa=;p zN9SW@OpDOyNC>j-G79DKz80c!5p U-Zl;}ng9R*07*qoM6N<$f;Oz3umAu6 literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy@3x.png b/FightPandemics/Resources/Assets.xcassets/plus-circle-solid copy.imageset/plus-circle-solid copy@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..12e44df49f8f5f3722757b84d05d9767e9be59ba GIT binary patch literal 3612 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 i^f;{@&PU*o310xy44e{Q9@1F=0000*5~( literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/Contents.json b/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/Contents.json new file mode 100644 index 0000000..f29734c --- /dev/null +++ b/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "user-circle.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "user-circle@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "user-circle@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle.png b/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle.png new file mode 100644 index 0000000000000000000000000000000000000000..9eeef1f4e668ff6b15df2641cf02e15f300f550e GIT binary patch literal 643 zcmV-}0(||6P)s5Fi9p5L1DTkocT{4oC%Y2T3ZxsUXgQpM)SYu&Znw z!;_wDznz`;*;z}GVAJWexY=x~mSx=@kH->YQpyPLFL({=^?DfJBjW_y?Y4~#9c(P( z8Igc~I2=lh5r?>+%jJ5G<3#_6Mxzlkzry(p;5}px%tXN0AgO}z37;XnqN|feC2u4F zu-j-fd~wAllSu~^dL+wcv-hkl&4t}=_nbsB9*^62unM*`NA?-xwOY*wnIPGEz3w37 zO4ZU5J_FD(vOWXo>N%;FU0`}fqF1cnp{lY4u+89pzn^P>=Xpg%vOtA5*jxr#Kq8Jo z}uylX*Qvf??wa@Cyo&0u^TwJCY}ac`UK`&Vcw;_caSy zA)NZF!pkRRgV|NV@H9BfdPHlBBnDH}Dq$bhbxy;^FnwboxI{wZ>{Ru{@`|{OU%Iq2 z3e?mVZ7>+v>2#Wv+al@GYU8|A25N?ajL>GtyGA#DEq&np#NUW%syZ7RsCq4pkSB)! d&@8Sc+7A!RM{0l9CS z-Q0Mw7dtSLwf1^u_S^Z}u`MwNMN!nczrSxUEG)DqlSvEX8qL4HzTR1uHO82(uCAuO z?~g@8vg$Gth{wlA4-57HqK&atLoC5{y}!R7i<(pm(BI({ zE-qXQ5iYM(*s@X#DVrj|E?H1i1M2`-CYl1ey1Lp%EF70uCBZdVUS6(@5#?UoZbE)r zdp)*o`)GG}_gd5i1TcMaQ3(*=w7W7QE5l-839t~l2I3d&C_6_C6m52cTiwxQMoqxTSm|P? zKS(+FZ!soSZY5m+)nV(u;Zjk0j%RP zWoelu<<7a4+$w!fPfw{1-sa~HEmF5-Fdekik}$qXeL)b6Ie2PkY)$x17-(^Ek?+Vo zJw5ew9z8*zKNALm)o&SZ%K-?Nz5iB5nM>HfEh@O1RD=lJSR#34)&fXCX$^OWsIw5Ei41NvPTAcx`@=e{tx_34YIzwZn zgNiY%gTJh&NuYS6LEGx88^U7A+A>m;h==b@nscfh4-XG6b~=XaxQQ&)K*-GE_T}ZJ z<4`SFT3Q;bG?s-dF)a=Y%rX=F`ABngkIXB`n7%%+uBY=lR11(fDa)L`4v5m5<^kS= zCCKlhE!ufhzRs8j*F@)k7gVscF(&rzoBm43X>r-qkF*R-u~P zC4zx2NEK9klAw1|G8gC@E&Wi0i9=BgI-*!izt1z#fT}*nvB?1r-caYa42rri>9EA_ zF?E&H$eBK+sldvb=J9v32M?-_mO4Khs0O*E!qes|6VuF5)Ha-niTL2qt@S&GtR35BZ{sD1yo7C3t R8@~Vm002ovPDHLkV1hv;B+UQ- literal 0 HcmV?d00001 diff --git a/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle@3x.png b/FightPandemics/Resources/Assets.xcassets/user-circle.imageset/user-circle@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6c1113b32917538d47e779be263c4715455f112f GIT binary patch literal 1774 zcmVFNLOg#ete{~9WLD733P`VDY9u5c z;xXq`IViZU6DO&(=16I(9ozA-udnaJ6H*g;z240I{r$}A>+39@ne@AtmzTKFX!O_D z*RQ1}Ovso(BDc4LV#H2PPBtNOJDwsJoBi_>PmCwoI{_5O4Bq`t#Ug%tk!?F57m6pmiGfrX1KG-{ z78xZF`YHh<0ZkBHMB8RoUA*60TU+ah2XcuSwf$YPMK6>R;$nj&F?dSEqN@(2;M1p1 zt-OiLBt}vX4-Z#HWHdy0mZ}o6kw?&n+@xf{Mat}#U5Le=)BrP4?bFlK>*wd^ZF^61 zOh$@Yu09&B7iLdsD@8@ns*6+_%gf7qAT`HtDzBSIM@L;(TU8Vf4-ebWTs`GgjHfkj z(aVETFjt~zP)u@1o8$?t6IA}8sPtG$km5eQySr;9_9E@Xsi~>!qNY;@IrcMWk4q!Q zm1?KUxTh!*MM!yACJ~}8R?6(pkm78fb4M3V zOm15|z%gn4VAb9@3=ZgSw@Wc-D}8vc7LEr^jA;nBR#sNxbRh`rh@#;z*i9LlXSqPX zJ2JW$^APF5ejThB%#)_lHu7C9qjUnRI2On8V9Hu4i$59cY+9VMz&@0{Ht^#4qhUJy zrnGg5%m^I&Dsy7Y!1nF(4<9~w?@?&SOS=r>IM@yeF?C?#3A7LFGP?J9?HKFu>B|LZ z;7}>u)IlddPMelu3}+ z4x$t&Wk00==)%}#@Cc?G_(z-VSSof7VvBk0G)=1Yl?8?#?6Swl$GL`M)(RP@koCyc za56lXwq0#t8u49Vmov5~1)xa_w}#8njHLi5>mWf5XA{|>Ri4BNlb|ZiA530T=_)L0 z^&10Vq`Vj(pcOVW zm0RR2Ndp7pUL(2Kw~bk4S}2i}0ArMP*&ylR&_aQf1YDd88JbHzmP=$D*hor(fmgeX znVd<;eIJgV{qCz&KoVu5vCGU0KJ+L4pUi9@Gx`?>bTN+DiDu3*JvC4#7{HBKs|2#Y zjVq;77fc-FCS67|4N^0gD31|i5>8`V{^!t+jAUyi=NR|Jrd5H)WM)Xf#5WkK`-+(g zWDKA(WBgw{+$MMei>Ujq%(NW_bLeQoC%aM9{2yB9CbqHdk))`KP#ie{O$>=-3k^ik zSjm@4$J<(m48HsVQbZfil_6n64Ll`!;q8ECTte$O-Dy@twnhYEku$&BcEz+0_(qIp zi5Aw9VfJzWy#Fr0mQ;cuJr2=VD@w-|y#uDS5VUx{$y#a*#_Slrde0kl`8C&ZrjQXj!Oq9m4u3<$W`! zS|r2JxOdz?F{F*r-OQ=JpCx{26uNT6G!Is;Tja_S{~~tzub6NF+d}cs>kWLb9F@6# zQR Date: Mon, 18 May 2020 21:15:02 +0430 Subject: [PATCH 2/4] tabor created, modified --- .../Post/CreatePost/TabBarUI/TabBarUI.swift | 174 +++++++++++++++++- 1 file changed, 173 insertions(+), 1 deletion(-) diff --git a/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift b/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift index 111ffc5..cd6d968 100644 --- a/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift +++ b/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift @@ -24,4 +24,176 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -import Foundation +import UIKit + +class TabBarUI: UIView { + private var feedBtn = UIButton() + private var searchBtn = UIButton() + private var postBtn = UIButton() + private var inboxBtn = UIButton() + private var profileBtn = UIButton() + private var feedLbl = UILabel() + private var searchLbl = UILabel() + private var inboxLbl = UILabel() + private var profileLbl = UILabel() + private var feedStack = UIStackView() + private var searchStack = UIStackView() + private var postStack = UIStackView() + private var inboxStack = UIStackView() + private var profileStack = UIStackView() + private var dotView = UIView() + private var wholeStack = UIStackView() + enum Selected: Int { + case feed = 1 + case search + case post + case inbox + case profile + } + func setUp (selected: Selected) { + dotView.backgroundColor = UIColor(hexString: "#425AF2") + dotView.frame.size.height = 6 + dotView.clipsToBounds = true + dotView.layer.cornerRadius = dotView.frame.size.height / 2 + self.addSubview(dotView) + feedBtn.setImage(#imageLiteral(resourceName: "home (1)").withRenderingMode(.alwaysTemplate), for: .normal) + feedBtn.imageView?.contentMode = .scaleAspectFit + feedBtn.tintColor = (selected.rawValue == 1) ? .black : UIColor(hexString: "#979797") + self.addSubview(feedBtn) + searchBtn.setImage(#imageLiteral(resourceName: "Group 1087").withRenderingMode(.alwaysTemplate), for: .normal) + searchBtn.tintColor = (selected.rawValue == 2) ? .black : UIColor(hexString: "#979797") + searchBtn.imageView?.contentMode = .scaleAspectFit + self.addSubview(searchBtn) + postBtn.setImage(#imageLiteral(resourceName: "plus-circle-solid copy"), for: .normal) + postBtn.imageView?.contentMode = .scaleAspectFit + self.addSubview(postBtn) + inboxBtn.setImage(#imageLiteral(resourceName: "inbox").withRenderingMode(.alwaysTemplate), for: .normal) + inboxBtn.tintColor = (selected.rawValue == 4) ? .black : UIColor(hexString: "#979797") + inboxBtn.imageView?.contentMode = .scaleAspectFit + self.addSubview(inboxBtn) + profileBtn.setImage(#imageLiteral(resourceName: "user-circle").withRenderingMode(.alwaysTemplate), for: .normal) + profileBtn.tintColor = (selected.rawValue == 5) ? .black : UIColor(hexString: "#979797") + profileBtn.imageView?.contentMode = .scaleAspectFit + self.addSubview(profileBtn) + feedLbl.attributedText = NSAttributedString(string: "Feed", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + self.addSubview(feedLbl) + searchLbl.attributedText = NSAttributedString(string: "Search", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + self.addSubview(searchLbl) + inboxLbl.attributedText = NSAttributedString(string: "Inbox", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + self.addSubview(inboxLbl) + profileLbl.attributedText = NSAttributedString(string: "Profile", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + self.addSubview(profileLbl) + setUpStacks(selected: selected) + } + func setUpStacks (selected: Selected) { + setUpLStack(selected: selected) + setUpRStack(selected: selected) + setUpConstraints(selected: selected) + } + func setUpRStack (selected: Selected) { + inboxStack.translatesAutoresizingMaskIntoConstraints = false + inboxStack.axis = .vertical + inboxStack.alignment = .center + inboxStack.distribution = .fill + inboxStack.spacing = 5 + inboxStack.addArrangedSubview(inboxBtn) + if (selected.rawValue == 3) { + inboxStack.spacing = 12 + inboxStack.addArrangedSubview(dotView) + } else { + inboxStack.addArrangedSubview(inboxLbl) + } + self.addSubview(inboxStack) + profileStack.translatesAutoresizingMaskIntoConstraints = false + profileStack.axis = .vertical + profileStack.alignment = .center + profileStack.distribution = .fill + profileStack.spacing = 5 + profileStack.addArrangedSubview(profileBtn) + if (selected.rawValue == 4) { + profileStack.spacing = 12 + profileStack.addArrangedSubview(dotView) + } else { + profileStack.addArrangedSubview(profileLbl) + } + self.addSubview(profileStack) + wholeStack.translatesAutoresizingMaskIntoConstraints = false + wholeStack.axis = .horizontal + wholeStack.alignment = .top + wholeStack.distribution = .fillEqually + wholeStack.spacing = ((UIScreen.main.bounds.width - 275) / 4) + wholeStack.addArrangedSubview(feedStack) + wholeStack.addArrangedSubview(searchStack) + wholeStack.addArrangedSubview(postStack) + wholeStack.addArrangedSubview(inboxStack) + wholeStack.addArrangedSubview(profileStack) + self.addSubview(wholeStack) + } + func setUpLStack (selected: Selected) { + feedStack.translatesAutoresizingMaskIntoConstraints = false + feedStack.axis = .vertical + feedStack.alignment = .center + feedStack.distribution = .fill + feedStack.spacing = 5 + feedStack.addArrangedSubview(feedBtn) + if (selected.rawValue == 1) { + feedStack.spacing = 12 + feedStack.addArrangedSubview(dotView) + } else { + feedStack.addArrangedSubview(feedLbl) + } + self.addSubview(feedStack) + searchStack.translatesAutoresizingMaskIntoConstraints = false + searchStack.axis = .vertical + searchStack.alignment = .center + searchStack.distribution = .fill + searchStack.spacing = 5 + searchStack.addArrangedSubview(searchBtn) + if (selected.rawValue == 2) { + searchStack.spacing = 12 + searchStack.addArrangedSubview(dotView) + } else { + searchStack.addArrangedSubview(searchLbl) + } + self.addSubview(searchStack) + postStack.translatesAutoresizingMaskIntoConstraints = false + postStack.axis = .vertical + postStack.alignment = .center + postStack.distribution = .fill + postStack.spacing = 5 + postStack.addArrangedSubview(postBtn) + self.addSubview(postStack) + } + func setUpConstraints (selected: Selected) { + switch selected { + case .feed: + dotView.makeSubview(of: feedStack) + .width(6) + .height(6) + case .search: + dotView.makeSubview(of: searchStack) + .width(6) + .height(6) + case .inbox: + dotView.makeSubview(of: inboxStack) + .width(6) + .height(6) + case .profile: + dotView.makeSubview(of: profileStack) + .width(6) + .height(6) + default: + break; + } + + wholeStack.makeSubview(of: self) + .width((UIScreen.main.bounds.width - 60)) + .height(60) + .right(to: \.rightAnchor, constant: -30) + .left(to: \.leftAnchor, constant: 30) + .top(to: \.topAnchor, constant: 55) + + } +} + + From ebc5e09576bc6a2fd0716b4f786c03c748039716 Mon Sep 17 00:00:00 2001 From: ethanswift Date: Mon, 18 May 2020 21:27:43 +0430 Subject: [PATCH 3/4] localized --- FightPandemics/Resources/en.lproj/Localizable.strings | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/FightPandemics/Resources/en.lproj/Localizable.strings b/FightPandemics/Resources/en.lproj/Localizable.strings index 6c4a5f8..46655f3 100644 --- a/FightPandemics/Resources/en.lproj/Localizable.strings +++ b/FightPandemics/Resources/en.lproj/Localizable.strings @@ -48,6 +48,10 @@ "OfferRequestRequestBtn" = "Requesting"; "OfferRequestCloseBtn" = "Close"; "OfferRequestConfirmBtn" = "Confirm"; +"TabBarUIFeedBtn" = "Feed"; +"TabBarUISearchBtn" = "Search"; +"TabBarUIInboxBtn" = "Inbox"; +"TabBarUIProfileBtn" = "Profile"; // MARK: Profile From 347f6117f532bb85bd1b501e187c16de54d2b43c Mon Sep 17 00:00:00 2001 From: ethanswift Date: Mon, 18 May 2020 21:31:01 +0430 Subject: [PATCH 4/4] localized --- .../Features/Post/CreatePost/TabBarUI/TabBarUI.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift b/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift index cd6d968..8a5ac77 100644 --- a/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift +++ b/FightPandemics/Features/Post/CreatePost/TabBarUI/TabBarUI.swift @@ -75,13 +75,13 @@ class TabBarUI: UIView { profileBtn.tintColor = (selected.rawValue == 5) ? .black : UIColor(hexString: "#979797") profileBtn.imageView?.contentMode = .scaleAspectFit self.addSubview(profileBtn) - feedLbl.attributedText = NSAttributedString(string: "Feed", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + feedLbl.attributedText = NSAttributedString(string: "TabBarUIFeedBtn".localized, attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) self.addSubview(feedLbl) - searchLbl.attributedText = NSAttributedString(string: "Search", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + searchLbl.attributedText = NSAttributedString(string: "TabBarUISearchBtn".localized, attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) self.addSubview(searchLbl) - inboxLbl.attributedText = NSAttributedString(string: "Inbox", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + inboxLbl.attributedText = NSAttributedString(string: "TabBarUIInboxBtn".localized, attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) self.addSubview(inboxLbl) - profileLbl.attributedText = NSAttributedString(string: "Profile", attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) + profileLbl.attributedText = NSAttributedString(string: "TabBarUIProfileBtn".localized, attributes: [NSAttributedString.Key.font: Fonts.poppinsRegular.customFont(size: 12), NSAttributedString.Key.foregroundColor: UIColor(hexString: "#979797")]) self.addSubview(profileLbl) setUpStacks(selected: selected) }