๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐ŸŽ iOS & ๐Ÿ”น Flutter/๐Ÿ”ฅ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ…14

[iOS] CoreData์—์„œ ํŠน์ • Entity ๋‚ด๋ถ€์— ์žˆ๋Š” Entity์˜ ํŠน์ •๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ์„ ๋•Œ(NSPredicate) ์ฝ”์–ด๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์—ฐ์Šตํ•˜๋‹ค๊ฐ€ ์ƒ๊ธด ์ผ์ด๋‹ค. ๋จผ์ € entity๋กœ๋Š” UserMO์™€ JokeMO ๋‘๊ฐœ๊ฐ€ ์žˆ๋‹ค. User์™€ Joke๋Š” Model๋„ ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ณด๋ฉด ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด User๋Š” Joke ๋ฐฐ์—ด์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋•Œ๋ฌธ์— ํŠน์ •ํ•œ User์˜ ํŠน์ • ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ๊ฐ–๋Š” Joke๋งŒ ์„ ๋ณ„ํ•˜๊ณ  ์‹ถ์€ ๊ณผ์ •์—์„œ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. func fetchWithPredicate(currentUser: User, currentCategory: Category) -> [Joke] { var jokes = [Joke]() let fetchRequest: NSFetchRequest = UserMO.fetchRequest() let idPredicate = NSPredicate(format: "id = %@", currentUs.. 2023. 12. 20.
[iOS] storyboard์—์„œ custom init์„ ํ•œ ๊ฒฝ์šฐ required init์ด ํ•„์š”ํ•œ ์ด์œ  view controller์—์„œ init์„ ์ƒ์„ฑํ•ด์ฃผ๋ ค๋ฉด ์™œ required init์ด ํ•„์š”ํ• ๊นŒ? required init์€ ํ•„์ˆ˜ ์ƒ์„ฑ์ž๋กœ ๋ถ€๋ชจ ํด๋ž˜์Šค์— ์ƒ์„ฑ๋˜์–ด ์žˆ๋‹ค๋ฉด ์ž์‹ ํด๋ž˜์Šค์—์„œ๋Š” ํ•„์ˆ˜๋กœ ์ƒ์„ฑํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. ๋‹จ, ์ง€์ • ์ƒ์„ฑ์ž๋ฅผ ๋”ฐ๋กœ ์ž‘์„ฑํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ. ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ์ƒ์„ฑ์ž๋“ค์„ ๊ทธ๋Œ€๋กœ ๋ฐ›์„ ๊ฒฝ์šฐ์—๋Š” ๋”ฐ๋กœ ์ƒ์„ฑํ•ด ์ค„ ํ•„์š”๊ฐ€ ์—†๋‹ค. view controller๋Š” UIViewController๋ฅผ ์ƒ์†๋ฐ›๋Š”๋‹ค. class firstViewController: UIViewController ๊ทธ๋ฆฌ๊ณ  UIViewController๋Š” NSCoding์ด๋ผ๋Š” ํ”„๋กœํ† ์ฝœ์„ ์ฑ„ํƒํ•˜๊ณ  ์žˆ๋‹ค. class UIViewController: NSCoding ์ด NSCoding ํ”„๋กœํ† ์ฝœ์—๋Š” required init์œผ๋กœ NSCoder๋ฅผ .. 2023. 11. 9.