์๋
ํ์ธ์~!์ค๋์ ํผ์ค๋ ๋ชจ๋น๋ฆฌํฐ์ฑ์์ ํ์ด๋จธ๋ฅผ ์ด์ฉํด์ ์ด์ฉ์๊ฐ์ ๊ตฌํํ ๋ถ๋ถ์ ๊ธฐ๋กํด๋ณด๋ ค๊ณ ํฉ๋๋ค!โจํ๋ก์ ํธ ๊ธฐ๊ฐ ์ค ๊ธฐ๊ฐ์ผ์ ์งํค๊ธฐ ์ํด ์ ์ ์์ด ๋ฌ๋ฆฌ๋ค ๋ณด๋ ๊ธฐ๋ก์ ๋ง์ด ๋ชปํ ์ ์ด ์์ฌ์์์ด๋ฒ์ฃผ๋ ํ๋ก์ ํธ ๊ธฐ๊ฐ ์ค์ ๊ณต๋ถํ๋ ๋ด์ฉ์ ์์ฃผ๋ก ํฌ์คํ
์ ์งํํ๋ ค๊ณ ํฉ๋๋ค~!๋๋ฌด๋๋ฌด ๋ฐ๋น ๋ ๊ธฐ๋ก์ ๊ผญ ์ฑ๊ธฐ๊ธฐโญ๏ธ ์ด๊ธฐ๊ตฌํ๋ฐฉ๋ฒํฅ๋ณด๋์ ๋์ฌํ๊ธฐ๋ฅผ ๋๋ ์ ๋, ํฅ๋ณด๋์ ๋์ฌ์๊ฐ์ ๋ณด์ฌ์ฃผ๋๋ก UI๋ฅผ ๊ตฌ์ฑํ์์ด์!์ฒ์์๋ ๋์ฌํ ํฅ๋ณด๋๋ฅผ ์ ์ฅํ๋ ๋ฐ์ดํฐ์ "๋์ฌํ๊ธฐ" ๋ฒํผ์ ๋๋ ์ ๋์ ์๊ฐ์ ์ ์ฅํด ๋ ๋ค ๊ทธ ์๊ฐ๊ณผ ํ์ฌ์ ์๊ฐ์ ์ฐจ๋ฅผ ๊ตฌํ์ฌ ์ด์ฉ์๊ฐ์ด ์ ์ฅํ๋๋ก ๊ตฌํํ์์ด์. func calculateKickboardTotalTime() -> Int { guard let start = getUserDefa..
๐ Project
์๋
ํ์ธ์~!์ค๋์ ์๋ก์ด ํ ํ๋ก์ ํธ๋ฅผ ์์ํ ๋ ์
๋๋ค!ํ์๋ค๊ณผ ์์ ๋์ ํผ์ค๋ ๋ชจ๋น๋ฆฌํฐ์ฑ์ ๊ตฌํํด๋ณด๊ธฐ๋ก ํ์ด์~!MapKit์ ์ฒ์ ์ฌ์ฉํด ๋ด์ ๊ผญ ๋์ ํด๋ณด๊ณ ์ถ์๋ ์ฑ์ด์์ต๋๋ค! ์ด๊ธฐ ์์ด์ด ํ๋ ์ ์ด๊ธฐ์ ์์ด์ด ํ๋ ์์
๋๋ค. ์ ํฌ๋ GCOO ์ฑ์ ๋ชจ๋ฐฉํ์ฌ ์ฑ์ ๋์์ธํ์์ต๋๋ค~! ์ด 5๊ฐ์ ํ์ด์ง๋ก ๊ตฌ์ฑ๋์ด์์ต๋๋ค.๋ก๊ทธ์ธ ํ๋ฉดํ์๊ฐ์
ํ๋ฉด๋งต ํ๋ฉด์ฌ์ฉ์ ํ๋ฉด๋์ฌ ํ๋ฉด ์ด๋ฒ์ ์ ๊ฐ ๋งก์ ๊ตฌํ ๋ถ๋ถ์ ์ฌ์ฉ์ ํ๋ฉด์
๋๋ค!โจ์ฌ์ฉ์ ํ๋ฉด ( ๋ง์ดํ์ด์ง ) ๊ตฌํ ๊ตฌํ ์ ๋ก์ง ๊ตฌ์ํ๊ธฐ ์ ๋ชฉ ๋ถ๋ถ์ ๋ค๋ก ๊ฐ๊ธฐ ๋ฒํผ์ด ์๋์ผ๋ก ์์ฑ์ด ๋๋ ๋ด๋น๊ฒ์ด์
๋ฐ๋ฅผ ์ด์ฉํ์ฌ,ํ๋กํ, ๋์ฌ์ค, ์ด์ ๋์ฌ ๋ชฉ๋ก ๋ถ๋ถ์ ํ
์ด๋ธ ๋ทฐ์ ์ธ์
์ ๋๋์ด์ ๊ตฌํ์ ํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์์ด์~! ? View๋ก ๊ตฌํํด๋ ๋๋๋ฐ ..
๋ง์ง๋ง์ผ๋ก ์ฑ์ ์์ด์ฝ์ ๋ณ๊ฒฝํด๋ณด์์ต๋๋ค! ChatGPT์๊ฒ ์ฑ ์์ด์ฝ์ ๋ง๋ค ์ ์๋ ์ฌ์ดํธ๋ฅผ ๋ช ๊ฐ ์ถ์ฒ ๋ฐ์๋๋ฐ, ์ฌ๊ธฐ๊ฐ ์์ฃผ ํธํ๋๋ผ๊ตฌ์~! iOS ์์ด์ฝ ๋ง๋๋ ์ฌ์ดํธ IconKitchen ( ๋งํฌ ์ฒจ๋ถ๊ฐ ์๋ผ์..ใ
) AppIcon ์ค์ ํ๊ธฐ ๋จผ์ iphone ์์ด์ฝ์ ๋ง๋ค์ด์ฃผ์ธ์! Assets์ AppIcon์ ์ฐํด๋ฆญํ ํ์ Show in Finder๋ฅผ ํด๋ฆญํด์ฃผ์ธ์! AppIcon.appiconset ํด๋์ ๋ค์ด๊ฐ์ ์์ ์ด ๋ง๋ iosIcon ํด๋์ ๋ด์ฉ๋ฌผ์ ๋ณต์ฌํด์ ( cmd + c ) ๋ถ์ฌ๋ฃ์ด์ฃผ๋ฉด ๋~! ( cmd + v ) ์์ ๊ฐ๋จํด์ ๋๋์ด์!! ์ ์ฉ ํ๋ฉด ๊ท์ฌ์ด Wish ์ฑ ์์ด์ฝ์ด ์ ์ฉ๋์์ต๋๋ค~!
์ค๋์ ์๋ ์ด์ ๋ ๋ฉ์ธ ํ๋ฉด์ ์๋ ์ด๋ฏธ์ง๋ฅผ ์ค์์ดํํ์ฌ ์ธ๋ค์ผ ๋์ ์ ์ฌ๋ฌ ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ฃผ์์ผ๋ฉด ์ข๊ฒ ์ด์ ๊ทธ ๋ถ๋ถ์ ๊ตฌํํด๋ณด์์ต๋๋ค. ์ ๊ฐ ์ํ๋ ๊ตฌ์กฐ๋ฅผ ๋ง๋ค๊ธฐ ์ํด์๋ ScrollView์ UIPageControl์ ์ฌ์ฉํ๋๋ผ๊ตฌ์! ์ด์ ๊ตฌํํ์ง๋ง, ์ค๋ ๋ธ๋ก๊ทธ๋ฅผ ์ ๋ ์ด์ ๋ ์๊ฐ๋ณด๋ค UIPageControl์์ ๋ณต์กํ ๋ถ๋ถ์ด ์์ด์ ์ถ๊ฐ์ ์ธ ๊ณต๋ถ๋ฅผ ํ ํ์ ๋์์์ต๋๋ค. ๊ทธ๋ผ ์์ํด๋ด
์๋ค!!๐ UIPageControl์๋ํ ์์ธํ ์ค๋ช
์ ์๋ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์๐ https://jihae-qu.tistory.com/87 [ UIKit ] UIPageControl #1 UIPageControl UIPageControl์ ์ฌ๋ฌ ํ์ด์ง๋ ์ฌ๋ฌ ์ฅ์ ์ฌ์ง๋ค์ ์์น๋ฅผ ํ์ํ๋ ์ผ๋ จ์ ์ ๋ค์
๋๋ค. page..
์ค๋์ ๋ฉ์ธํ๋ฉด๊ณผ TableView์ Pull to refresh ( ๋น๊ฒจ์ ์๋ก๊ณ ์นจ ) ๋ฅผ ์ ์ฉํด ๋ณด์์ต๋๋ค. UIRefreshControl UIRefreshControl๋ Table View์ Collection View๊ฐ ์์๋ฐ๊ณ ์๋ UIScrollView์ ์ฐ๊ฒฐํ๋ ํ์ค Control์
๋๋ค. Content๋ฅผ ์๋ก๊ณ ์นจํ ์ ์๋ Control๋ฅผ ์ ๊ณตํ๋ object์
๋๋ค. ์ฌ์ฉ์๊ฐ ์คํฌ๋กค์ด ๊ฐ๋ฅํ Content ์์ญ์ ์๋๋ก ๋๋๊ทธํ๋ฉด refresh control์ด ํ์๋๊ณ , progress indicator๊ฐ ์ ๋๋ฉ์ด์
ํ ๋์ด ์ฑ์ ์๋ ค์ค๋๋ค. ์ด ์๋ฆผ์ ์ฌ์ฉํด content๋ฅผ ์
๋ฐ์ดํธํ๊ฑฐ๋ refresh control์ ๋ฌด์ํ ์ ์์ต๋๋ค. Target-action ๋ฉ์ปค๋์ฆ UIRefreshC..
CoreData์ ๋ฐ์ดํฐ ์ ์ฅํ๋ ๊ฒ์ ์ด์ด ์๋ก์ด TableViewController๋ฅผ ์ฌ์ฉํด CoreData์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ tableView์ ์ถ๋ ฅํ๊ณ , ํด๋น tableView ์์ ๋ฒํผ์ ๋ง๋ค์ด ๋ฒํผ ํด๋ฆญ์ CoreData์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํด๋ณด๋ ค๊ณ ํฉ๋๋ค! ๐ช๐ป TableView UI ๋ง๋ค๊ธฐ ์ฐ์ TableView์ UI๋ถํฐ ๋ง๋ค์ด ๋ณด๋ ค๊ณ ํฉ๋๋ค! ๋ฉ์ธํ๋ฉด์์ navigationController๋ฅผ ์ฐ๊ฒฐํ์ฌ navigationItem์์ ๋ฒํผ ํด๋ฆญ์ modal๋ก TableViewController๊ฐ ๋จ๋๋ก ๊ตฌํ์ ํ์์ต๋๋ค. WishList๋ฅผ ๋ณด์ฌ์ฃผ๋ View๋ 29CM์ ์ดํ์ ์ฅ๋ฐ๊ตฌ๋๋ฅผ ๋ณด๊ณ ๋น์ทํ๊ฒ UI๋ฅผ ๊ทธ๋ ค์ฃผ์์ด์. ์ฌ๋ฌ ํญ๋ชฉ์ ์ ํํ๋ ์ฒดํฌ ๋ฒํผ์ด ๋ฐ๋ก ํ์๊ฐ ์์ด์ ์ญ์ ๋ฒํผ์..
์๋
ํ์ธ์! ๐ฑ ์ค๋์ ์ด์ ๋ง๋ ์์๋ฆฌ์คํธ์ ๋ฒํผ์ ๋๋ ์ ๋, ํด๋น ์์๋ฆฌ์คํธ๋ฅผ ์ฝ์ด๋ฐ์ดํฐ๋ก ์ ์ฅํ๋ ์์
์ ํ์์ต๋๋ค! ํจ๊ป ๊ฐ๋ณด์์ฃ ! CoreData ๋ฐ์ดํฐ ๊ตฌ์กฐ ์ฐ์ coreData์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ถํฐ ๋ง๋ค์ด์ฃผ์ด์ผ๊ฒ ์ฃ ?! URLSession์์ ๊ฐ์ ธ์๋ ๋ฐ์ดํฐ ์ ๋ณด๋ค ์ค images๋ฅผ ์ ์ธํ๊ณ ๊ทธ๋๋ก ์ฌ์ฉํด์ฃผ์์ด์! struct Product: Codable { let id: Int let title, description: String let price: Int let discountPercentage: Double let brand, category: String let thumbnail: String let images: [String] } Editor -> Create NSManagedOb..
์ค๋์ ์์ ๋ฆฌ์คํธ์ UI์์
๊ณผ ํ๋ฉด์ Data๋ฅผ ๋์ฐ๋ ์์
์ ํ์์ต๋๋ค! ๊ทธ๋ผ ์์ํด๋ณผ๊น์ง?! โจ WishListApp UI WishListApp์ ๋ฉ์ธํ๋ฉด์ ๊ทธ์ ๊น๋ํ๊ณ ์ฌํํ์ผ๋ฉด ์ข๊ฒ ๋ค๋ผ๊ณ ์๊ฐ์ ํ์ด์! ๊ทธ๋์ ํ์์ ์ ๊ฐ ์ฆ๊ฒจ์ฐ๋ ์ฑ์ธ " 29CM "์ ์ํ ํ๋ฉด๊ณผ ๋น์ทํ๊ฒ ๋ง๋ค์ด๋ณด์๊ณ ์๊ฐํ๊ฒ ๋์์ต๋๋ค! ์๋ Add to Wish ๋ฒํผ๊ณผ Next to Item ์ด ์๋ View๋ ๊ณ ์ ์ธ ์ํ๋ก Description์ด ๊ธธ์ด์ง๊ฒ ๋๋ฉด View๊ฐ ์คํฌ๋กค์ด ๋๊ฒ๋ ๊ตฌํ์ ํด๋ณด๋ ค๊ณ ํฉ๋๋ค! ๊ธ์จ์ฒด๋ ๋ค๋ฅด์ง๋ง ๊ทธ๋๋ ์ ๋ง ๊น๋ํ UI ๊ฐ์์!ใ
ใ
WishListApp Data ์ ์ฉํ๊ธฐ URLSession์ ํตํด ๋ณํํ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ProductDataManager์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด์ค๋๋ค..