Swift
-
[UIKit] url로 image 불러와보자 : SDWebImageSwift/UIKit 2022. 7. 8. 14:54
GitHub - SDWebImage/SDWebImage: Asynchronous image downloader with cache support as a UIImageView category Asynchronous image downloader with cache support as a UIImageView category - GitHub - SDWebImage/SDWebImage: Asynchronous image downloader with cache support as a UIImageView category github.com 1. import 한다 2. UIImageView 생성한다 3. .sd_setImage로 접근해서 url 넣어준다
-
[UIKit] NavigationView 구현해보자 : navigationController, navigationBar, pushViewControllerSwift/UIKit 2022. 7. 8. 14:40
tint color 지정해줘야 pushView 들어갔을때 상단 좌측의 "back" 이 primary 가 아닌 흰색으로 보일것이다. 그리고 configureNavbar이라는 함수를 통해 navigation bar을 따로 설정해주었다 configureNavbar이다 해당 함수내에서 navbar에 들어갈 내용들이 선언되고 등록된다. item 이 select 되었을때 동장하는 delegate의 함수이다 self?.navigationController?.pushViewController(vc, animated: true) 를 통해 navigation에 page로 이동시킨다. 아래보이는 2번째 스샷이다
-
[UIKit] CoreData 써보자Swift/UIKit 2022. 7. 8. 02:59
AppDelegate.swift 파일이다 import CoreData 해주고 아래와 같이 변수와 함수를 만들어주자 참고로 NSPersistentContainer(name: "NetflixCloneModel") name의 값으로 들어갈 String은 data model file의 이름이다 보이는거 와같이 Data Model file을 만들어주고 이름을 지어주고 container의 name에 똑같이 넣어주면 된다 이런식으로 Entity 만들어주자 만든 entity에 따라 data save해주는 함수이다. 대충보면 context 불러오고 entity이름으로 data 생성해서 값 넣어주고 context.save() 해주면된다
-
[UIKit] CollectionView 에 대해 Action을 줘보자 : UIContextMenuConfiguration, UIMenuSwift/UIKit 2022. 7. 7. 17:25
길게 눌렀을때 해당 CollectionView에 대한 어떠한 행동을 하고 싶다 밑에 스샷에서 보는 거 처럼 Download랄찌.. 이런식으로 ActionProvider을 Closure로 불러서 children으로 UIAction을 선언해서 넣어주면 된다. 그리고 handler을 Closure로 불러서 Download가 클릭됐을때 할 어떤 행동을 실행문에 넣어주자
-
[UIKit] event 를 발생 시키고 다른 view 에서 뭔가를 실행하기 : NotificationCenterSwift/UIKit 2022. 7. 7. 16:01
CollectionViewTableViewCell에서 title을 download하는 함수가 성공적으로 수행되면 NotificationCenter을 통해 post를 날려 event를 발생 시킨다 DownloadsViewController에서 일치하는 name으로 Notification을 observing하고 있다 해당되는 event가 발생하면 후행 Closure을 통해 실행문을 실행한다
-
-
[Swift] 메모리 관리를 위한 약한 참조 : weakSwift 2022. 7. 5. 01:39
1. 원래 Swift는 메모리에 올리고 내리는걸 직접 해줘야 했다 2. 하지만 ARC (Automatic Reference Counting) 라는걸 통해 더 이상 변수의 값을 쓰지 않으면 자동으로 메모리에서 내려준다 3. 기본적으로 var 변수는 강한 참조이며, 변수에 값이 있으면 ARC의 count가 1로 올라가며 값이 nil일 경우 count가 0으로 내려간다 4. 이걸 사용해서 Class의 instance를 만들때 deinit이라는 함수를 만들어서 instance의 값이 nil이 될 경우 특정 실행문을 실행 시킬수 있다. 5. 하지만 이러한 특성 때문에 메모리에 관리에 취약해 지는 경우가 생기는데 바로 retain cycle 이라는 현상이다. 이게 뭐냐면 두개의 변수가 서로의 값을 강하게 참조하고 ..