지난시간 ScrollView레이아웃 설정에 이어서 오늘은 ContainerView안에 Horizontal CollectionView를 구현해보겠습니다
https://accompani-i.tistory.com/162
오늘 완성할 NestedScrollView를 영상으로 먼저 보겠습니다.
NestedscrollView를 구현할 때 할 것들은 무엇이 있을까요?
1. Viewcontroller
2. ScrollView
3. ImgView
4. ContainerView
5. CollectionView
1. Viewcontroller
2. ScrollView는 지난시간 구현했고
이번시간에는
3. ImgView
4. ContainerView
5. CollectionView
로 nestedscrollview를 완성시켜 보겠습니다.
지난시간에 넣어준 scrollview-view 안에
img view와 stack view를 넣어주고
그 안에 containerview를 넣어줍니다.
containerview개수를 정하고 embed형태로 viewcontroller를 생성해 줍니다.
※homviewcontroller에서 이미 RecommendListViewController를 참조하고 있습니다.
그래서 homeviewController의 collection뷰를 그대로 가져와서 세팅해주는 작업을 해줍니다.
※ 참고
UpComingViewController를 새로 만들어서 역할을 부여하는데,
HomeViewController에 있는 CollectionView를 그대로 보여주는 역할을 합니다.(상단 동영상 참고)
※각각의 UI 레이아웃 설정, CustomClass설정도 생략하겠습니다.
※ Homeviewcontroller의Item과, homeviewcontroller에 collectionviewcontroller의 item setting은 생략하겠습니다.
itemsetting은 RecommendListViewController에 할당함.
import UIKit
class UpComingViewController: UIViewController {
var awardRecommendListViewController: RecommendListViewController!
var hotRecommendListViewController: RecommendListViewController!
// 두 개의 뷰컨트롤러(award,hot)는 RecommendListViewController를 가지고 있다.
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "award" {
let destinationVC = segue.destination as? RecommendListViewController
awardRecommendListViewController = destinationVC
awardRecommendListViewController.viewModel.updateType(.award)
awardRecommendListViewController.viewModel.fetchItems()
} else if segue.identifier == "hot" {
let destinationVC = segue.destination as? RecommendListViewController
hotRecommendListViewController = destinationVC
hotRecommendListViewController.viewModel.updateType(.hot)
hotRecommendListViewController.viewModel.fetchItems()
//homeviewcontroller와 itdentifier로 segueway
}
}
override func viewDidLoad() {
super.viewDidLoad()
}
'iOS > Swift 어플 따라하기' 카테고리의 다른 글
[Swift] Firebase 서버(RealtimeDatabase)에 저장된 데이터 불러오기 (0) | 2022.04.06 |
---|---|
[Swift] Firebase를 이용하여 검색어 서버(RealtimeDatabase) 저장 (0) | 2022.04.06 |
[Swift] ScrollView 개념과 레이아웃 설정(scrollview error) (0) | 2022.04.05 |
[Swift] Firebase Realtime Database에서 update, delete (0) | 2022.04.04 |
[Swift] Firebase Realtime Database에서 Parsing Data (0) | 2022.04.03 |