[UIKit] 여러개의 세그 연결
2022. 7. 18. 15:06ㆍiOS/UIKit
728x90
반응형
테이블뷰 셀이 이미 세그로 연결된 상태에서 다른 버튼을 세그로 연결할 떄!!
일단 원하는 버튼을 보여질 화면과 연결을 시킨다
그리고 연결한 선을 클릭하면 인스펙터에 identifier이름을 입력할 수 있다
그리고 이제 클릭하면 연결할 화면을 짝지어주면 된다
일단 첫번째 세그인 테이블뷰 셀을 클릭했을 때는
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
resultSelectedTitle = orderCategoryData[indexPath.row].orderTitle
performSegue(withIdentifier: "goViewControllerOrderCategory", sender: nil)
}
테이블뷰 셀을 클릭했을 때는 performSegue를 이용하여 이동하는 세그의 identifier이름을 작성해준다
다음은 이제 세그의 이름에 따라 다른 화면으로 이동할 수 있게 설정해야한다
prepare을 사용한다!
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "goViewControllerOrderCategory" {
let ViewControllerOrderCategory = segue.destination as! ViewControllerOrderCategory
ViewControllerOrderCategory.resultTitle = resultSelectedTitle
//네비게이션 뒤로가기 버튼
let backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: self, action: nil)
backBarButtonItem.tintColor = .darkGray
self.navigationItem.backBarButtonItem = backBarButtonItem
} else if segue.identifier == "goViewControllerCart" {
print("카트화면으로 이동")
//네비게이션 뒤로가기 버튼
let backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: self, action: nil)
backBarButtonItem.tintColor = .white
self.navigationItem.backBarButtonItem = backBarButtonItem
} else {
print("세그연결해줘야함")
}
}
if문을 사용하여 세그 identifier이름에 따라 다른 작업을 할 수 있게 한다!
728x90
반응형
'iOS > UIKit' 카테고리의 다른 글
[UIKit] 바텀시트 (0) | 2022.07.18 |
---|---|
[UIKit] 네비게이션 상단바부분까지 배경색 칠하기 (0) | 2022.07.18 |
[UIKit] 테이블뷰 UISwitch의 isOn 속성 유지, 테이블뷰 셀 내부의 스위치 클릭 이벤트 (0) | 2022.07.18 |
[UIKit]테이블뷰(TableView) 섹션(Section), 다중 셀, 다양한 높이의 이미지 셀 리사이징 (0) | 2022.07.17 |
[UIKit] 테이블뷰(TableView)안에 컬렉션뷰(CollectionVeiw) 만들기 (0) | 2022.07.16 |