์ ์ฒด ๊ธ184 Swift 5 beginDisablingInterfaceAutorotation Ignoring ๋๋ฒ๊น -[UIWindow endDisablingInterfaceAutorotationAnimated:] called on without matching -beginDisablingInterfaceAutorotation. Ignoring. ์ ์์ ์ธ ์ํฉ์์๋ ํธ์ถ ๋์ง ์๋ ๋ฉ์์ง ์ ๋๋ค. ์๋ฌ ๋ฉ์์ง๋ ์๋๊ณ ๊ทธ๋ฅ ์ด๋ ๋ค ~ ์ ๋์ ๋ฉ์์ง ์ธ๊ฒ ๊ฐ์ต๋๋ค(Ignoring!!!) ์ฝ์์ ์ฐ์ด ๋ณด์ง๋ ์์๋๋ฐ ์๋ฌ๋ฅผ ์๋ฆฌ๋ ๊ฒ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋ ธ์ถ๋๋ค? ์ ์์ ์ธ ๋์์ ์ํํ๊ฑด ์๋๋๊น ์ด์ ๋ฅผ ์ฐพ์๋ณด์๋ฉด ์ฃผ๋ก ํค๋ณด๋์์ ๋ํ๋๋ ์๋ฌ์ ๋๋ค. ์๋ฅผ ๋ค์ด let textField = UITextField() textField.resignFirstResponder() ์คํฌ๋กค ํด์ ๋ทฐ๋ฅผ ๋ซ์ ๋ ํฌ์ ์ค์ฒ ๋๋๋ ์์ ์์ ํ.. 2021. 7. 12. SF Symbol ๋ค์ด๋ก๋ ๋ฐ๊ธฐ xCode ํด์ธ ๊ฐ๋ฐ ์ ํ๋ธ๋ค ๋ณด๋ฉด ๊ฒ์ ํ๋์์ sf ๋ก ๋ค์ํ ์์ด์ฝ ์กฐํํ๊ณ ์ฌ์ฉํ๋๋ฐ sf ์น๋๊น ์๋์ค๋๋ผ๊ตฌ์ ์๊ณ ๋ณด๋ ๋ค์ด๋ก๋ ๋ฐ๋๊ฑฐ!! developer.apple.com/sf-symbols/ Apple Developer There’s never been a better time to develop for Apple platforms. developer.apple.com ์ ํ์ด์ง๋ก ๋ค์ด๊ฐ ์ค๋๋ค ์ค๋ฅธํธ ๋ณด๋ฉด์ ์คํฌ๋กค ๋ด๋ฆฌ๋ค ๋ณด๋ฉด ์ค๊ฐ์ ์ฌ๊ธฐ์ ๋ค์ด๋ก๋ ๋ฒํผ ๋๋ฌ ์ค๋๋ค. ๋๋ธ ํด๋ฆญ ํด์ฃผ์ธ์ฉ ๊ทธ๋ ๋ต๋๋ค. ์ด์ ๊ฒ์ ํ๋์์ sf ๋ง ์ณ๋ ์์ด์ฝ์ ์กฐํํ ์ ์์ต๋๋ค~~~~~ 2021. 5. 12. [Swift] PhotoKit ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉํ๊ธฐ ์๊ฐํ๋ ๊ฒ ๋ณด๋ค ํจ์ฌ ๋ฐฉ๋ํ ๋ด์ฉ์ด๋ผ ์ ๋ฆฌ๊ฐ ํ์ํด ๋ณด์ฌ์ ํฌ์คํ ํด๋ด ๋๋ค. ํด๋์ค, Privacy, ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ ์์ผ๋ก ์ดํด ๋ณผ ๊น ํฉ๋๋ค. ์ปจํ ์ธ ๋ชฉ๋ก ํด๋์ค ์์๋ณด๊ธฐ Privacy ๊ฐค๋ฌ๋ฆฌ ์ ๊ทผ ์ฌ์ฉ์ ๊ถํ (์์ง ์์ฑ์ค) ์ธ๋ค์ผ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ ์๋ณธ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ ํด๋์ค ์์๋ณด๊ธฐ PHAsset : PHObject ํฌํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ํ๋์ ์ด๋ฏธ์ง๋ ๋น๋์ค, ๋ผ์ด๋ธ ํฌํ ๋ฅผ ํํํ๋ค. ์์ ์ ์ด๋ฏธ์ง๋ ๋น๋์ค์ ๋ํ ๋ฉํ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ค. static ๋ฉ์๋์ธ fecthAssets์ PHFetchResult๋ฅผ ๋ฐํํ๋ค. ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ ์ด๋ฏธ์ง ์์ฒด๋ฅผ ๋ถ๋ฌ์ค๋ ค๋ฉด ์์ฃผ ๋ง์ ๋ฉ๋ชจ๋ฆฌ์ ์์์ด ํ์ํ๋ค. ๋ฐ๋ผ์ ๊ฒฝ์ฐ์ ๋ฐ๋ผ ๋ง์ ์ด๋ฏธ์ง๋ฅผ ๋ถ๋ฌ์ค๋ฉด ํฌ๋์ฌ ๋๋ ์ผ์ด ๋ฐ์ ํ ์ ์๋ค. ์ฌ๊ธฐ์.. 2021. 4. 2. [Swift] ๋ธ๋ฆฌ๊ฒ์ดํธ ํจํด iOS A๋ผ๋ ๋ทฐ ์ปจํธ๋กค์์ B๋ผ๋ ๋ทฐ ์ปจํธ๋กค๋ก ์ด๋ํ ๋ ๋ฐ์ดํฐ๋ฅผ ๋๊ฒจ์ค์ผ ํ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ์ด๋ด ๋ ์ธ ์ ์๋ ๋ฐฉ๋ฒ์ด ์คํ ๋ฆฌ๋ณด๋๋ผ๋ฉด segue๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ B์ ํ๋กํผํฐ๋ฅผ ๋ง๋ค์ด ์ ๊ทผํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ๋ง์ฝ์ A Bool { if (nameTextField.text != "") { delegate?.updateLabel(nameTextField.text ?? "") nameTextField.resignFirstResponder() } return true } @objc func popViewController() { self.dismiss(animated: true, completion: nil) } } viewDidLoad ์์๋ ๋ค๋น๊ฒ์ด์ ์ ๋ค์ด๊ฐ ๋ฒํผ๊ณผ ํ ์คํธ ํ๋์ ๋์์ ์ํด ๋ธ๋ฆฌ๊ฒ.. 2021. 3. 24. [Swift] UIButton ๋ฒํผ ๋๋ฌ์ ํจ์ ํธ์ถ addTarget (์ฒ์ ๋ถํฐ ์ฐจ๊ทผ์ฐจ๊ทผ) ์ด๋ฒ์ ์์๋ณผ ๊ฑด UIButton์ ์์ฑ๊ณผ UIControl action ์ผ๋ก ๋ฉ์๋๋ฅผ ํธ์ถ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๊ฒ ์ต๋๋ค~~ ์ค์ํํธ๋ก ์ฒ์ ํ๋ก์ ํธ๋ฅผ ์์ํด ๋ณด์๊ฑฐ๋ ๊ณต๋ถํ์๊ธฐ ์ํด ์ด ํฌ์คํ ์ ์ฐธ๊ณ ํ์ จ๋ค๋ฉด ๋์์ด ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ทฐ๋ ์ฝ๋๋ก ์์ฑํ์ง ์๊ณ xcode ์ค์ํํธ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก ์ธํ ๋์ด ์๋ Main.Storyboard ์ ViewcController๋ฅผ ๊ฐ์ง๊ณ ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๋ง์ฝ ์คํ ๋ฆฌ๋ณด๋ ์์ด ์ฝ๋๋ก ํ๋ก์ ํธ๋ฅผ ์์ํ๊ณ ์ถ์ผ์ ๋ถ์ ์๋ ํฌ์คํ ์ ์ฐธ๊ณ ํ์๋ฉด ๋ฉ๋๋ค. [Swift] Storyboard ์์ด Swift ํ๋ก์ ํธ ์์ํ๊ธฐ Swift ํ๋ก์ ํธ๋ฅผ ์๋ก ์์ฑํ๊ณ ์คํ ์ํค๋ฉด ๊ธฐ๋ณธ์ผ๋ก Main.storyboard๋ฅผ ์์์ ์ผ๋ก ์ก๊ฒ ๋ฉ๋๋ค. ์ด๋ ๋ฉ์ธ ์คํ ๋ฆฌ๋ณด๋๋ก.. 2021. 3. 23. [Swift]UITableViewDataSourcePrefetching ํ ์ด๋ธ ๋ทฐ์ ์ ๋ฐ์ดํฐ ๋ฏธ๋ฆฌ ๋ก๋ ์ํค๊ธฐ UITableViewDataSourcePrefetching ์ ํ๋กํ ์ฝ์ ํ ์ข ๋ฅ๋ก ์ฌ์ฉ์์ ํ๋ฉด์์ ๋ณด์ฌ์ง๊ธฐ ์ ์ ์ ์์ ์ฒ๋ฆฌํด์ผ ํ๋ ์ฐ์ฐ์ด ๊ธด ๊ฒฝ์ฐ ๋ฏธ๋ฆฌ ์ฐ์ฐ์ ์ํํ ์ ์๊ฒ ํด์ฃผ๋ DataSource ์ ๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด ๊ตณ์ด ์ ์ฌ์ฉ๋์ง ์์ง๋ง ์ด๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ธ๋ถ๋ก ๋ถํฐ ๋ฐ์์ ์ ์ ๋ณด์ฌ์ฃผ๋ ๊ฒฝ์ฐ์ ๋ํด ๊ณต๋ถํ๋ฉด์ ์๊ฒ ๋์ด ํฌ์คํ ํด๋ณผ๊น ํฉ๋๋ค. prefetch๋? ์งํ ์ค์ธ ์ฒ๋ฆฌ์ ๋ณํํ์ฌ ํ์ํ๋ค๊ณ ์๊ฐ๋๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ ์ ํ๋ ํ๋ ๊ฒ์ ๋งํ๋ค. - ์ถ์ฒ : ์ปดํจํฐ์ธํฐ๋ทIT์ฉ์ด๋์ฌ์ ์ฌ์ฉ์ ํ๋ฉด์ ๋ณด์ฌ์ง๋ ํ ์ด๋ธ ๋ทฐ์ ๋ฐ์ดํฐ ์์ค์ ๋๋ถ์ด ์ ์์ ๋ฏธ๋ฆฌ ๋ฐ์ดํฐ๋ฅผ ์ค๋นํด์ผ ํ๊ฑฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ค๋น(์ฒ๋ฆฌ)ํ๋ ์๊ฐ์ด ๊ธด ๊ฒฝ์ฐ ์ฌ์ฉํ๊ฒ ๋๋ฉฐ tableView(_:cellForRowAt:.. 2021. 3. 19. [Swift] Storyboard ์์ด Swift ํ๋ก์ ํธ ์์ํ๊ธฐ Swift ํ๋ก์ ํธ๋ฅผ ์๋ก ์์ฑํ๊ณ ์คํ ์ํค๋ฉด ๊ธฐ๋ณธ์ผ๋ก Main.storyboard๋ฅผ ์์์ ์ผ๋ก ์ก๊ฒ ๋ฉ๋๋ค. ์ด๋ ๋ฉ์ธ ์คํ ๋ฆฌ๋ณด๋๋ก ์์ํ์ง ์๊ณ ์คํ ๋ฆฌ๋ณด๋ ์์ด ํ๋ก์ ํธ๋ฅผ ์คํ์ํค๊ณ ์ถ๋ค๋ฉด ์๋ ํํ ๋ฆฌ์ผ ์์ผ๋ก ๋ฐ๋ผ์ ์งํํด ์ฃผ์๋ฉด ๋ฉ๋๋ค. ์ฐ์ ํ๋ก์ ํธ์ ์๋ Main.storyboard๋ฅผ ์ญ์ ํด ์ค๋๋ค. ํด๋น ํ์ผ์ ํด๋ฆญํ์๊ณ ๋ฐฑ์คํ์ด์ค ๋๋ฅด์๋ฉด ์๋์ ๊ฐ์ ์ฐฝ์ด ๋น๋๋ค. ํด๋น ํ์ผ์ ์ฐธ์กฐ๋ง ์ง์ ์ค ๊ฒ์ธ์ง ์๋๋ฉด ํ์ผ์ ํด์งํต์ผ๋ก ์ฎ๊ฒจ ์ฐธ์กฐ ๋ฟ๋ง ์๋๋ผ ํ์ผ๋ ๊ฐ์ด ์ง์ ์ค ๊ฒ์ธ์ง ๋ฌป๋ ์ฐฝ์ ๋๋ค. ์ด๋ Move To Trash ๋ฒํผ์ ๋๋ฌ์ ์์ ํ ์ญ์ ํด ์ค๋๋ค. Remove Reference๋ ์ฐธ์กฐ๋ง ์ง์ฐ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ํด๋น ํ๋ก์ ํธ์ ํ์ผ์ด ๋จ์ ์๊ฒ ๋ฉ๋๋ค. ํ๋ ๋ฒํผ ๋๋ฅด์ง ๋ง์๊ณ .. 2021. 3. 3. [JavaScript] Symbol ํ์ ์ฌ๋ฒ ๊ณ ์ ํ ๊ฐ์ผ๋ก ์๊ธฐ ์์ ๋ง ๊ฐ์ ๊ฐ์ผ๋ก ์ทจ๊ธ๋๋ค. ์์ฑ์ Symbol()์ ํตํด์ ์์ฑํ๋ฉฐ ์์์ ์์ฑ๋ a ๋ณ์๋ Symbol ๊ฐ์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ ์ ์ ์๋ค ์์ ์ด์ผ๊ธฐ ํ๋ฏ์ด ์ฌ๋ฒ์ ๊ณ ์ ํ ๊ฐ์ด๊ธฐ ๋๋ฌธ์ ๊ฐ์ ๋น๊ตํ ๊ฒฝ์ฐ false๋ฅผ ๋ฑ์ด ๋ธ๋ค ์ฌ๋ฒ์ ๋ฌธ์์ด์ ์ ๋ฌํ๋ฉด ์ค๋ช ์ ๋ง๋ถ์ด๊ฑฐ๋ ๊ฐ์ ๊ฐ์ ๊ฐ๋ฆฌํค๊ฒ ํ ์ ์๋ค. ์ฐ์ ๊ฐ๋จํ๊ฒ Symbol์ ์ธ์๋ก ๋ฌธ์์ด์ ์ง์ ํ ๊ฒฝ์ฐ ๊ฐ๋จํ ํด๋น ์ฌ๋ณผ์ ์ค๋ช ํ๊ฒ ๋๋ค. Symbol()์ ์ธ์๋ฅผ ์ ๋ฌํด์ ์ฌ๋ณผ ํ์ ์ ๋ณ์๋ฅผ ๋ง๋ค๋ฉด ํด๋น ๋ณ์๋ฅผ ์ฐ์ด๋ดค์ ๋ Symbol("test") ์ ๋ฌํ ์ธ์๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค. ๊ทธ๋ฌ๋ ์ฌ๋ณผ์ ์์ฑํ ๋๋ง๋ค ๊ณ ์ ์ ๊ฐ์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ๊ฐ์ ์ธ์๋ฅผ ๋๊ฒจ์ค ๋ณ์๋ผ ํด๋ ๋น๊ตํ ๊ฒฝ์ฐ ๋ ๋ณ์๋ ๋ค๋ฅธ ๊ฐ.. 2021. 2. 20. [SwiftUI] UserDefault ์ญํ์ ํ๋ AppStorage AppStorage ๋ ๊ธฐ์กด์ ์ฌ์ฉํ๋ UserDefault ๊ฐ์ ์ญํ์ ํ๋ค. Property Wrapper ๋ก์ ํค ๊ฐ์ ํ์๋ก ํ๋ค. ์ฌ์ฉ์ ์๋ ์ฝ๋์ ๊ฐ์ด @AppStorage("userName") var userName = "" ์์ฑํ๋ฉด ๋๋ค. @State ํ๋กํผํฐ ์๋ ํผ ์ฒ๋ผ ๊ตฌ์กฐ์ฒด ์์์ $๋ณ์๋ช ์ผ๋ก ์ ๊ทผํ์ฌ ์ฌ์ฉํ๋ฉด ๋๋ค TextField("ํ๋ ์ด์ค ํ๋ ์ ๋๋ค", text: $userName) 2021. 2. 12. [SwiftUI] TextField์ Toggle ์ฌ์ฉํ๊ธฐ ์ค์ ํ์ด์ง๋ ๋ก๊ทธ์ธ ํ์ด์ง์์ ๋ง์ด ์ฌ์ฉํ๋ TextField์ Toggle Life Cycle์ ์์ํ๊ฒ SwiftUI๋ก ์ฑ์ ๋ง๋ค๊ณ ์ ํ๋ค๋ฉด SwiftUI app ์ ๋ผ์ดํ ์ฌ์ดํด๋ก ์ง์ ํ๋ฉด ๋๊ณ , ๋ง์ฝ ์คํ ๋ฆฌ๋ณด๋๋ฅผ ํจ๊ป ์ฌ์ฉํ๊ณ ์ ํ๋ค๋ฉด UIKit app delegate๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค! ์ฐ์ ์ ์ฒด๋ฅผ ์ด๋ฃจ๊ณ ์๋ view ์ญํ์ ํ๋ body์ NavigationView๋ฅผ ์ถ๊ฐํ๋ค. navigationView๋ฅผ ๋ค๋ฃจ๊ธฐ์ VStack์ ์ถ๊ฐํ๋ค. ์ด๋ฆ์์ ์ ์ถํ ์ ์๋ฏ์ด vertical stack ์ด๊ณ ๊ณ์ธต ๊ตฌ์กฐ์์ children view๋ฅผ ์์ง์ผ๋ก ์๋๋ค. var body: some View { NavigationView { VStack { } .navigationTitle("ํ ์คํธ ์ฑ") }.. 2021. 2. 10. ๋ฐ์ดํฐ ๋ฒ ์ด์ค ์ ๊ทํ 1NF, 2NF, 3NF ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์ ๋ฐ์ดํฐ์ ์ค๋ณต์ด ๋ฐ์ํ๋ฉด ์ด์ ํ์(์ฝ์ ์ด์, ์ญ์ ์ด์, ๊ฐฑ์ ์ด์)์ด ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๋ฐ์ดํฐ ์ค๋ณต์ ์ต์ํ์ผ๋ก ์ค์ฌ ์ด์ ํ์ ๋ฐ์์ ์ค์ด๊ฒ ๋๋๋ฐ ์ด๋ ์ํํ๋ ๊ฒ์ด ์ ๊ทํ(Normalization)๋ผ๊ณ ํฉ๋๋ค. ์ ์ฒ๊ธฐ ๊ณต๋ถ์ ๊ธฐ๋ณธ cs๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฒฝํ์ด ์๋ค๋ฉด ํ๋ฒ์ฏค ๋ฐ๋ชฉ ์กํ ๋ถ๋ถ์ด๋ผ ์ด ๊ธฐํ์ ์ฝ๊ฒ ์ ๋ฆฌํด๋ณด๊ธฐ๋ก! ๋ฐ๋ผ์ ์ ์ฒ๊ธฐ ์ธ์ CS๋ฅผ ๊ณต๋ถํ์๋ ๋ถ์ด๋ผ๋ฉด ๋ค๋ก๊ฐ๊ธฐ ๋ฒํผ์ ๋๋ฌ์ฃผ์ธ์~ 1NF (1์ ๊ทํ) 1 ์ ๊ทํ์ ์์๊ฐ์ผ๋ก ๊ตฌ์ฑ ๋์ด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์ ๋งํ๋ ์์๋ ๊ณ ๋ฑํ๊ต ํํ์์ ํ ๋ฒ์ฏค ๋ค์ด๋ดค์ ๋งํ ํํ์ ์ฑ์ง์์ ์ด์ผ๊ธฐํ๋ ์์๋ฅผ ์๊ฐํ๋ฉด ์ฌ์์ ๋ ์ด์ ๋ถํด๋ ์ ์๊ณ ์ชผ๊ฐค ์ ์๋ ๊ฐ์ ๋งํฉ๋๋ค. ์ฆ ํ ์ด๋ธ์์ ํ๊ณผ ์ด ์ค ์ด์ ๊ฐ.. 2020. 12. 29. iOS Date Picker Style ์์๋ณด๊ธฐ Objective c ์ด์ ๋ฒ์ ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ ๋ก ๋์๋ ๋ฐ์ดํธ ํฝ์ปค ์คํ์ผ์ด ํ ๋ฒ์ ์์ ์ปดํํธ ํ์ ์ผ๋ก ๋์ค๋.... ๊ทธ๋์ ์ด๋ฅผ ๋ฐ๋ก ์ง์ ํด ์ฃผ๋ ค๋ฉด ์๋์ ๋ฐฉ๋ฒ๊ณผ ๊ฐ์ด ์คํ์ผ์ ์ง์ ํด ์ค์ผ ํ๋ค. [datePicker setPreferredDatePickerStyle:UIDatePickerStyleWheels]; UIDatePickerStyleAutomatic ์๋์ผ๋ก ์ง์ ํด ์ฃผ๊ณ ์ถ์ ๊ฒฝ์ฐ ์ฌ์ฉ UIDatePickerStyleCompact ์ปดํฉํธํ ํ์ ์ ๋ฐ์ดํธ ํฝ์ปค๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์ ๊ฒฝ์ฐ ์ด๋ ๊ฒ ๋ณด์ฌ์ง๊ณ ๋ ์ง๋ฅผ ํฐ์นํ๋ฉด ๋ฌ๋ ฅ์ด ๋์์ง๋๋ค UIDatePickerStyleWheels ํ ์คํ์ผ๋ก ๋์ค๊ฒ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ. ํ ์คํธํ๋์ ์ ์ธ์๋ฆฌ ๋ทฐ๋ก ๋ฃ๊ณ ์ถ์ ๋ ์์ฃผ ์ฌ์ฉํ๊ณ ์๋ ์คํ์ผ UIDatePickerStyleI.. 2020. 12. 28. ์ด์ 1 ยทยทยท 8 9 10 11 12 13 14 ยทยทยท 16 ๋ค์