IOS/UIKit
[iOS/UIKit] xib 파일로 테이블뷰 연결 후 터치이벤트&화면전환
U_Daeng
2022. 12. 2. 22:26
테이블뷰 셀을 xib로 연결했을 때 터치이벤트 구현하는 방법을 정리하려고 합니다~!
먼저 화면전환을 segue로 연결하고 Attributes inspector 에서 Identifier 을 지정해준다
[테이블뷰가 있는 컨트롤러]
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
//터치이벤트
performSegue(withIdentifier: "detail", sender: indexPath.row)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "detail"{
let destination = segue.destination as? detailViewController
if let selectedIndex = sender as? Int{
destination?.name = menu.settingList[selectedIndex].name
destination?.sum = menu.settingList[selectedIndex].sum
destination?.Img = menu.settingList[selectedIndex].img
}
}
}
performSegue 메소드
현재 뷰컨트롤러의 스토리보드 파일에서 지정한 identifier 을 이용해 segue를 시작한다.
prepare 메소드
segue가 수행될 예정임을 뷰 컨트롤러에 알린다.
[detailViewController]
위에 코드에서 연결했던 swift 파일이다
override func viewDidLoad() {
super.viewDidLoad()
updateUI()
}
func updateUI(){
detailName.text = name
detailSum.text = sum
detailImg.image = Img
}
위에서 받은 데이터를 받을 컨트롤러에서 연결한 아울렛 변수들에 넣어준다!!