SeSAC16 [iOS] TIL_230803 ๊ฐ์ ๋ทฐ์ปจ์ ์ฌ๋ฌ๊ฐ์ง ์ผ์ด์ค(์ถ๊ฐ & ์์ ๋ฑ)๋ก ์จ๋ณด๊ธฐ true/false, 0/1, “present”/”push”๋ฑ ๋ค์ํ ๋ฐฉ๋ฒ ํด์ฃผ์ฌ bool ๊ฐ๋ ์ข์ง๋ง ๋๊ฐ์ง ๊ฒฝ์ฐ ๋ฐ์ ๋์ ๋ชปํ๊ธฐ ๋๋ฌธ์ ์ฌ๋ฌ๊ฐ์ง ๊ฒฝ์ฐ๋ก ๋์ด๋๊ฒ ๋๋ฉด ์์ ํ๊ธฐ ์ด๋ ค์ ์ซ์๋ ๋ฌธ์์ด๋ก ํ๋ ๊ฑฐ๋ ์ฌ๋ฌ์ฌ๋์ด ํ์ ํ ๋ ์ด๋ ต๊ณ ํผ์ํด๋ ๊น๋จน์ ๊ฐ๋ฅ์ฑ ๋ง์. → ์ด๊ฑฐํ์ผ๋ก ํด๊ฒฐ. viewDidLoad์์ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ํ๋ ์ฝ๋ ๊ตฌํ return ํ ๋ ๋ญ๊ฐ ์ฒ๋ฆฌํ๋ฉด ์ข์ ์ ์์ง๋ง ์ง๊ธ์ ๊ทธ๋ฅ return ๋๋ ๋ฌธ์ ์๋ ๋ถ๋ถ ํ ์คํธ ๋ทฐ์ placeholder ํ ์คํธ ํ๋์ ๋ฌ๋ฆฌ ๊ธฐ๋ณธ ์ง์ X → ๋ถํ์ง์(ํ๋กํ ์ฝ) ๋ฐ๋ ค์์ผ ํจ. set์ ์ด์ฉํด์ ์์ ๋ ์ฝ๋๊ฐ ๊ฐ์ ์ญํ ์ ํ๊ฒ ๋จ. ๊ฐ์์ didSet ๋ฐ์ดํฐ๊ฐ ๋ฐ๋์์ ๋ ๊ฐฑ์ .. 2023. 8. 6. [iOS] TIL_230802 1. ์ ์ ๋๋ค ์์ ๋ฃ๊ธฐ ์์ ์ ํ๋๊ตฌ Google์ ์์ www.google.com ์ ์์ ๋๋ค ์ปฌ๋ฌ ์ง์ ํจ์ ๋ง๋ค์ด ์ค. ๋ฌธ์ : likeButton ๋๋ฅด๋ฉด ์๊น์ด ๊ณ์ ๋ฐ๋;; ์ด์ : ๋ฐ์ดํฐ๊ฐ ๋ฐ๊ปด์ tableView.reloadData() ๋ ๋๋ง๋ค ๋ทฐ์ ์ ์ด ๋ค์ ๋ง๋ค์ด ์ง๋๋ง๋ค ์์์ด ์๋ก ๋ฝํ. ํด๊ฒฐ: ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๋ struct์์ ์ปฌ๋ฌ๊ฐ์ ๋ง๋ค๊ณ ๊ฐ์ง๊ณ ์์. ํจ์ ๋ง๋ค์ด์ค. ์ธ์คํด์ค ๋ฉ์๋๋ฅผ ๋ฃ์ ์ ์๋ค๋ ๋ง์ด ๋ธ. ํจ์์ static ๋ถ์ฌ์ ํ์ ๋ฉ์๋๋ก ๋ฐ๊ฟ์ค์ ํด๊ฒฐ ์ธ์คํด์ค๋ฉ์๋๋ static ํ์ ๋ฉ์๋๋ ๋ฉ๋ชจ๋ฆฌ์ ๋ค๋ฅธ ๊ณณ์ ์ ์ฅ ๋จ. static์ ํ๋ก๊ทธ๋จ ๋๋ ๋๊น์ง ์ด์์์ ์ธ์คํด์ค ๋ฉ์๋๋ ์ธ์คํด์ค๊ฐ ์ด์ ์์ ๋๋ง ์กด์ฌ . ๋ทฐ์ปจ์์ ํจ์ ๊ฐ์ ธ๋ค ์ธ ๋ ํ์ ๋ฉ์๋๋ผ.. 2023. 8. 5. [iOS] TIL_230801 ํ๋กํผํฐ ์ธ์คํด์ค ํ๋กํผํฐ (ํด๋์ค/๊ตฌ์กฐ์ฒด๋ฅผ ์ด๊ธฐํ๋ฅผ ํด์ผ ํ๋กํผํฐ์ ์ ๊ทผ ๊ฐ๋ฅ) ์ ์ธ๊ณผ ์ด๊ธฐํ๋ฅผ ๋์์ or ์ ์ธ๋ง ํด๋๊ณ ์ธ์คํด์ค ์์ฑ ์ ์ด๊ธฐํ ํด๋ ๋จ! struct User { var nickname: String //์ ์ธ๊ณผ ์ด๊ธฐํ๋ฅผ ๋์์ or ์ ์ธ๋ง ํด๋๊ณ ์ธ์คํด์ค ์์ฑ ์ ์ด๊ธฐํ ํด๋ ๋จ! //์ธ์คํด์ค ํ๋กํผํฐ + ์ ์ฅ ํ๋กํผํฐ static var originName: String = "์ง์ง ์ด๋ฆ" //ํ์ ํ๋กํผํฐ(Meta Type) + ์ ์ฅ ํ๋กํผํฐ //์ฌ์ฉํ๊ฒ ๋๋ ์๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ, ์ฑ ์ข ๋ฃ๊น์ง ๋ฉ๋ชจ๋ฆฌ ์ ์ง //์ง์ฐ ์ ์ฅ ํ๋กํผํฐ(lazy) ์ฒ๋ผ ๋์ } ์ธ์คํด์ค๋ ์ธ์คํด์ค ํ๋กํผํฐ๋ง ์ ๊ทผ ๊ฐ๋ฅ ํ์ ํ๋กํผํฐ ์ ๊ทผ ๋ถ๊ฐ ํ์ ์ด๋ฆ์ผ๋ก ์ธ์คํด์ค ํ๋กํผํฐ ์ ๊ทผ๋ถ๊ฐ ํ์ ํ๋กํผํฐ ์ ๊ทผ .. 2023. 8. 3. [iOS] TIL_230731 XIB๋ก ํ ์ด๋ธ๋ทฐ ์ ๋ง๋ค๊ธฐ ํ ์ด๋ธ๋ทฐ ์ปจํธ๋กค๋ฌ์์ ๋ง๋ค๋ ์ ์ xib๋ก ๋ฐ๋ก ๊บผ๋ด์ ๋ง๋ฆ ์๋ ํ ์ด๋ธ๋ทฐ ์ฝ๋๋ ๋๊ฐ์ด ์งฐ์ง๋ง runtime ์ค๋ฅ๋จ. guard let ๊ตฌ๋ฌธ์ผ๋ก ๋ฐ๊ฟ์ค ๋ด guard let ๊ตฌ๋ฌธ์ ์ํด ์๋ฌ ์์ด ๋น ์ ๋ค์ด ๋ค์ด๊ฐ๊ธด ํ์ง๋ง ์ ๋๋ก ์ํ๋ ์ ์ด ์ ๊ฐ์ ธ์์ง. ํ ์ด๋ธ๋ทฐ ์ ๋ฑ๋กํ๊ธฐ XIB๋ก ํ ์ด๋ธ๋ทฐ์ ์ ์์ฑํ ๊ฒฝ์ฐ, ํ ์ด๋ธ๋ทฐ์ ์ฌ์ฉํ ์ ์ ๋ฑ๋กํด์ฃผ๋ ๊ณผ์ ์ด ํ์! bundle ์ด๋? ์ง๊ธ์ ๋ด ํ๋ก์ ํธ ์์น์ ๋ ๋ผ๊ณ ๋ง ์์๋๊ธฐ.(nil๋ก ํ๋ฉด ๋ด ํ๋ก์ ํธ ์์น) ํ ์คํธ ์ ๋งํผ ๋์ด ๋ํ๊ธฐ (Dynmic Height) Dynamic Height์ ์ํด ์ค์ ํด์ผ ํ ๊ฒ automaticDimension numberOfLines Auto Layout(์ฌ๋ฐฑ) Dynamic heigh.. 2023. 8. 3. [iOS] TIL_230728 cell select vs gesture ํ ์ด๋ธ ๋ทฐ์์๋ ํญ์ ์ค์ฒ๋ก ํค๋ณด๋๋ฅผ ์ ์ ๋ด๋ฆผ. ๋๋๊ทธ ํด์ ๋ด๋ฆผ. ํ ์ด๋ธ๋ทฐ์ ์คํฌ๋กคํ๋ฉด ํค๋ณด๋ ๋ด๋ ค๊ฐ๋๋ก ์ฝ๊ฒ ์ค์ ํ ์ ์์. ํ ์ด๋ธ๋ทฐ ์ ํฌ๊ธฐ ๋๋น: ๊ธฐ๊ธฐ์ ๋๋น ๋์ด: ์กฐ์ ๊ฐ๋ฅ ๊ฐ๊ฒฉ: ๋ฌด์กฐ๊ฑด ๋ถ์ด์์ ( ์ปฌ๋ ์ ๋ทฐ๋ ๊ฐ๋ฅ . tableview์์ ๋์ด์ ธ ์๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๋ ๊ฒ์ ์์ uiview ๋ฃ์ด์ inset ์ค ๊ฒ → ์ด ๋ฐฉ๋ฒ์ ๊ทธ๋ฆผ์ ๋ฃ์ ๋ ๋ฌธ์ ) button image symbol ํฌ๊ธฐ ๋ฐ๊พธ๊ธฐ SFSymbol iOS 13 ์ดํ ๋ฑ์ฅ. iOS 12์์๋ ์์ ์ถ๊ฐํด์ ๋ฃ์ด์ผํจ. configuration์์ font scale๋ก ๋์ ๊ฐ๋ฅ Cell์ ์ฒดํฌ ๋ฐ์ค๋ ๋ณดํต ๋ฒํผ ๋ง๊ณ ์ด๋ฏธ์ง๋ทฐ๋ก ๊ตฌํํ๊ธฐ๋ํจ. ์ ์์ฒด๋ฅผ ํด๋ฆญํ์ ๋๋ ์ฒดํฌ ํ ์ ์๋๋ก .. 2023. 8. 1. [iOS] TIL_230727 UserDefaults ์ ์ฅํ๋ ์๊ธฐ ๋ทฐ๊ฐ ์ฌ๋ผ์ง ๋๋ง ์ ์ฅํ๊ฒ ๋๋ฉด ๋ง์ฝ ์ฌ์ฉ์๊ฐ ํ๋ฉด์ ๋ ๋ ค์ ์์ ๋ฒ๋ ธ์ ๋ ์ ์ฅ ์ ๋จ. → ๊ทธ๋ฅ ์์๋ก ํ์ํ ๋๋ง๋ค ์ ์ ๋ํด์ธ ์ ์ ์ฅํ๋ ๊ฒ ์ข์. ๊ทธ ์ ๋๋ ํจ์จ์ ๋ฌธ์ X ๋ทฐ ๊ฐฑ์ ์ ์ธ์ ํ๋ ๊ฒ ์ข์๊น? viewWillAppear : ํ๋ฉด์ด ๋ฐ ๋๋ง๋ค ํธ์ถ ๋๋ ํจ์. UserDefaults ๊น๋ํ๊ฒ ์ฐ๋ ๋ฒ ์ ์ ๋ํด์ธ ๊ฐ์ด ๋ค๋ฅธ ํ๋ฉด(๋ค๋ฅธ ํญ๋ฐ ๋ฑ)์์ ๋ณ๊ฒฝ๋๊ณ ํ์ฌ ํ๋ฉด ์์๋ ๋ฐ๋ก๋ฐ๋ก ์ ๋ฐ์ดํธ ๋ ๋ชจ์ต์ ํ์ธํ๋ ค๋ฉด viewWillAppear(_:)์์ ์ ์ ๋ํด์ธ ๊ฐ ๋ถ๋ฌ์์ค์ผํจ. UserDefaults์ ์ ์ฅ ํ ์ ์๋ ๊ฐ Int, String, Bool, Float, String Array ๊ทธ ์ธ์ enum, class ๋ฑ์ ์ธ์ฝ๋ฉ์ด๋ ๋์ฝ๋ฉ ๋ฑ์ ๊ณผ.. 2023. 7. 31. ์ด์ 1 2 3 ๋ค์