Developer
-
@AppStorage์ UserDefaults์ค์ ๋ฅผ ์จ๋ด์ ! 2021. 10. 17. 23:20
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป App์ ๊ฐ๋จํ๊ฒ ๊ฐ๋ค์ ์ ์ฅํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ!!๐ค ๋ฐ๋ก๋ฐ๋ก UserDefaults!!! ์ด๋ฒ ์๊ฐ์๋ UserDefaults์ iOS 14๋ถํฐ ์๋ก ์๊ธด SwitUI์ AppStorage์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค! ์ ๊ทธ๋ผ ํจ๊ป ๋ฝ๊ฐ๋ด ์๋น! UserDefaults Apple์์๋ "App์ ์คํํ๋ ๋์ ์ง์์ ์ผ๋ก key-value๋ก ์ ์ฅํ๋ ์ฌ์ฉ์์ ๊ธฐ๋ณธ Database์ ๋ํ Interface"๋ผ๊ณ ์ค๋ช ์ ํ์ด์! ์ฝ๊ฒ ๋งํด ๋ณ๋์ DB ์์ด App์ ๋ด๊ฐ ์ํ๋ ๊ฐ์ ์ด๋ค Key์ ํจ๊ป ์ ์ฅํ๊ณ , ์ธ์ ๋ ๊ทธ Key๋ฅผ ํตํด ๊ฐ์ ๋ถ๋ฌ๋ผ ์ ์๋ ๊ฒ์ด์ฃ . ๋จ, String, Bool, Int, Array ๋ฑ ๋จ์ผ Data๋ฅผ ์ ์ฅํ๋ ๋ฐ์ ์ ํฉํ๊ธฐ ..
-
NavigationView, NavigationLink์ค์ ๋ฅผ ์จ๋ด์ ! 2021. 9. 26. 02:38
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ์ด๋ฒ ์ค์ ๋ฅผ ์จ๋ด์ ์๊ฐ์~ iOS App์ ๋ณด๋ฉด TabBar์ ํจ๊ป ์์ฃผ ์ฐ์ด๋ NavigaionView! ๊ทธ๋ฆฌ๊ณ NavigationView์ ์ด๋์ ์ํด ์ฌ์ฉ๋๋ NavigationLink์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค. NavigationView์ Bar์ ๋ํ ์ค๋ช ์ ์๋ ์ปค์คํ ๋ฐฉ๋ฒ์ด ๋ง๊ณ ๋ค์ํด์ ๋ฐ๋ก ๋ค๋ค๋ณด๋๋ก ํ ๊ฒ์! ๊ทธ๋ผ ์ผ๋จ ์ด ๋์ ๋จผ์ ํํค์ณ๋ด ์๋ค! ๋จผ์ NavigationView์ ์ ์๋ฅผ ์ดํด๋ณผ๊ฒ์~ Apple Deverloper ์ฌ์ดํธ์์๋ ํ์ ๊ณ์ธต ๊ตฌ์กฐ์์ ๋ณด์ด๋ ๊ฒฝ๋ก๋ฅผ ๋ํ๋ด๋ View์ Stack์ ํ์ํ๊ธฐ ์ํ View ๋ผ๊ณ ์ ์๋ฅผ ๋ด๋ฆฌ๊ณ ์์ต๋๋ค. ์ฌ์ด ์์๋ก ๊ธฐ๋ณธ App์ธ Setting์ ๋ณด์๊ฒ ๋๋ฉด ์ด๋ค ์์๋ฅผ ํฐ์นํ๋ฉด ์์ผ๋ก ์ฑ..
-
QR code - Scan!์ค๋์ Swift ์์ 2021. 9. 21. 16:18
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ์ง๋ ์๊ฐ์ ์ด์ด์ QR Code Scan!! ์ฐ๋ฆฌ ์๋น์์ ์ฐ๋ ๊ทธ ์ฑ!! ์ง๊ธ ๋ฐ๋ก ๋ง๋ค์ด๋ณด์๊ตฌ์ใ ใ ๋ฐ๋ก ๋ ์ฐ๊ณ ~๐ถ QR Scanner ๋ง๋ค๊ธฐ 1. ์นด๋ฉ๋ผ ๊ถํ ์ฃผ๊ธฐ! Scanner๋ฅผ ๊ตฌํํ๋ ค๋ฉด ์นด๋ฉ๋ผ ์ฌ์ฉ์ ํ์๊ฒ ์ฃ ? ์นด๋ฉ๋ผ ์ฌ์ฉ์ ์ํด์๋ ์ฌ์ฉ์์๊ฒ ๊ถํ์ ํ๋ฝ๋ฐ์์ผ ํ๋๊น Info.plist์์ Privacy - Camera Usage Description์ ์ถ๊ฐํด์ฃผ๊ณ , ๊ถํ ์์ฒญํ ๋ ๋์ฐ๊ณ ์ ํ๋ ๋ฉ์์ง๋ฅผ ์ ๋ ฅํด์ฃผ์ธ์! ๊ทธ๋ผ ์ฑ์ด ์คํ๋์ด ์ต์ด๋ก ์นด๋ฉ๋ผ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋ ๊ถํ์ ์์ฒญํฉ๋๋ค! 2. Scanner View ๊ตฌ์ฑํ๊ธฐ ๊ฐ๋จํ๊ฒ View๋ฅผ ๊ตฌ์ฑํด๋ณด๊ฒ ์ต๋๋ค! QRCameraCell(cardNumber: $cardNumber) ๋ถ๋ถ์ด ์นด๋ฉ๋ผ ..
-
QR Code - ๋ง๋ค๊ธฐํธ!์ค๋์ Swift ์์ 2021. 9. 15. 19:14
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ๋งํ ใ ในใด๋๋ฌธ์ ๋๋ฌด ํ๋ ์์ฆ ์ฑ์์ ํนํ๋ ๋ง์ด ์ฐ๋ ๊ธฐ๋ฅ์ด ์๋๋ฐ์~ ๋ฐ๋ก QR์ฝ๋! ๊ฐ์๊ธฐ ๋ ์ฌ๋ผ์ ์ด๋ ๊ฒ ๊ธ์ ์ฐ๊ฒ ๋์์ต๋๋ค! 1ํธ์ ๋ง๋ค๊ธฐ, 2ํธ์ Scan ํ๊ธฐ ์ด๋ ๊ฒ ๊ธ์ ์จ๋ณด๋ ค๊ณ ํฉ๋๋ค. ์ ๋ฐ ใ ในใด ๋ฉ์ถฐ! QR ์ฝ๋ ๋ง๋ค๊ธฐ ๋ง๋๋ ๋ฒ์ ์๊ฐ๋ณด๋ค ๊ฐ๋จํฉ๋๋ค! CoreImage ์์ ์๋ CIFilter๊ฐ qrCodeGenerator()๋ผ๋ Method๋ฅผ ๊ฐ์ง๊ณ ์์ด์ ์ดํ์ ์์ ์ ์ด๋ฏธ์ง ํฌ๊ธฐ๋ง ์กฐ์ ํ๋ ์์ ์ ๊ฑฐ์น๋ฉด ๋๋ต๋๋ค. ์์ธํ ๊ฑด ์๋์ ์ฝ๋๋ก ์ค๋ช ๋๋ฆฌ๋๋ก ํ ๊ฒ์! import SwiftUI import CoreImage.CIFilterBuiltins struct ContentView: View { let context = CICo..
-
Protocol 2ํธ (Delegation, Extension, ์์, ํฉ์ฑ)์ค๋์ Swift ์์ 2021. 8. 25. 19:03
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป Protocol 1ํธ์ ์ด์ด์ ๋ฐ๋ก 2ํธ ์์ํ๊ฒ ์ต๋๋ค! 1ํธ ์๋ ๋งํฌ์ ๋๋ค https://aiden-ios.tistory.com/12 Protocol 1ํธ (Protocol ์ ์ ๋ฐฉ๋ฒ) ์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ์ด๋ฒ ์๊ฐ์ Protocol์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค! ์ด๋ฒ ์๊ฐ์ ๋ด์ฉ์ด ์ข ๋ง์์. ๊ทธ๋์ 1,2ํธ์ผ๋ก ์งํํด๋ณด๋ ค๊ณ ํฉ๋๋ค. ๋ฐ๋ก ๊ทธ๋ฅ ๋ค์ด๊ฐ์์ฃ ~ Protocol์ aiden-ios.tistory.com ์ค๋น๋๋์? 2ํธ ๋ฐ๋ก ๊ผฌ์ฐ!! Delegation(์์) Class๋ Struct์ Instance์ ํน์ ํ์์ ๋ํ ์ฑ ์์ ๋๊ธฐ๋ ๋์์ธ ํจํด ์ค ํ๋์์. Delegation ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ ์ ์๋๋ก Delegatio..
-
Protocol 1ํธ (Protocol ์ ์ ๋ฐฉ๋ฒ)์ค๋์ Swift ์์ 2021. 8. 16. 18:19
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ์ด๋ฒ ์๊ฐ์ Protocol์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค! ์ด๋ฒ ์๊ฐ์ ๋ด์ฉ์ด ์ข ๋ง์์. ๊ทธ๋์ 1,2ํธ์ผ๋ก ์งํํด๋ณด๋ ค๊ณ ํฉ๋๋ค. ๋ฐ๋ก ๊ทธ๋ฅ ๋ค์ด๊ฐ์์ฃ ~ Protocol์ ์ฝ๊ฒ ๋งํด ์ฒญ์ฌ์ง์ด๋ผ๊ณ ๋ณผ ์ ์์ด์. Property๋ Method๋ฅผ ์ ์ํ์ฌ ํด๋น Protocol์ ์ฑํํ๋ฉด ๋ด๋ถ๋ง ๋ฐ๋ก ๊ตฌํ์ ํ๋๊ฑฐ์ฃ ! Protocol์ ํน์ง์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 1. Struct, Class, Enum์ Protocol์ ์ฑํํด์ ํน์ ๊ธฐ๋ฅ์ ์คํํ๊ธฐ ์ํ Protocol์ ์๊ตฌ์ฌํญ์ ์ค์ ๋ก ๊ตฌํํ ์ ์์ต๋๋ค. 2. Protocol์ ์ ์๋ฅผ ํ๊ณ ์ ์๋ฅผ ํ ๋ฟ ์ค์ค๋ก ๊ธฐ๋ฅ์ ๊ตฌํํ์ง๋ ์์ต๋๋ค. (์กฐ๊ฑด๋ง ์ ์) 3. ํ๋์ Type์ผ๋ก ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ์ ์๋์ ๊ฐ์ด Typ..
-
Custom TabBar์ค์ ๋ฅผ ์จ๋ด์ ! 2021. 8. 15. 01:37
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ์ค์ ๋ฅผ ์จ๋ด์ ! ๋ ๋ฒ์งธ ์๊ฐ! iOS App์ ๋ณด๋ฉด ํํ ๋ณด์ด๋ TabBar! ๋ฐ๋ก TabBar๋ฅผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ๋ค์ ์์๋ณด๊ฒ ์ต๋๋ค! ์ด๋ฒ ์๊ฐ์ ๋ฐ๋ก TabBar์ ๋ํ ์ค๋ช ํ๊ณ , ๊ตฌํํ๋ ๋ฐฉ๋ฒ๋ง ์งง๊ฒ ์์๋ณด๊ฒ ์ต๋๋ค! ์ ํ ๊ฐ๋ฐ์ ๋ฌธ์(TabView)์ ์์ ์ ํจ๊ป ์ ๋์์์ผ๋ ์ด ๋ถ๋ถ์ ์ฐธ์กฐํ์๋ฉด ์ข์ ๊ฒ ๊ฐ์์! https://developer.apple.com/documentation/swiftui/tabview/ ๊ทธ๋ผ ์คํ๋จ!! ๐ถ๐ต TabBar๋ฅผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ด์! ๋ค๋ฅธ ์์๋ค๋ ๋ง์ฐฌ๊ฐ์ง์ด๊ฒ ์ง๋ง Apple์์ ์ ๊ณตํ๋ TabView๋ฅผ ์จ๋ ๋๊ณ ๋ค๋ฅธ ์์๋ค์ ํ์ฉํด์ Customํด๋ ๋ผ์! ๊ทธ๋ผ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ๊ณผ ์ ๊ฐ ์ฃผ๋ก ์ฌ์ฉํ๋..
-
Initializer 2ํธ (Class์ Initializer)์ค๋์ Swift ์์ 2021. 8. 8. 22:48
์๋ ํ์ธ์. iOS ๊ฐ๋ฐ์ ์์ด๋ ์ ๋๋ค!๐ฆ๐ป ์ง๋ ์๊ฐ ๊ฐ ํ์ ์ Initializer์ ๋ํด์ ์์๋ณด์์ฃ ? ์ด์ด์ ๋ฐ๋ก Class์ Initializer์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค! ๋น ๋ฅด๊ฒ ๋ค์ด๊ฐ ๋ด ์๋ค~ Class์ Initializer์๋ ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ด ์์ด์! Class๋ ๋ณธ์ธ์ด ๊ฐ์ง๊ณ ์๋ Property ๋ฟ๋ง ์๋๋ผ ๋ถ๋ชจ Class์์ ์์๋ Property๋ค๋ ์ด๊ธฐ๊ฐ๋ค์ ์ง์ ํด์ค์ผ ํฉ๋๋ค! ํจ์ฌ ๋ณต์กํด์ง์ฃ ? ๊ทธ๋์ Class๋ ๋ค๋ฅธ Type์๋ ์๋ Initializer๋ค์ด ์๋ต๋๋ค! Class๋ง์ด ๊ฐ์ง๋ Initializer Designated Initializer ํํ ๋ณด๋ ๊ธฐ๋ณธ์ ์ธ Initializer์์! ๋ถ๋ชจ Class์ Initializer๋ฅผ ํธ์ถํ ์ ์์ด์. Class ..