[Swift/iOS] TableView - move to screen

Programming/IOS 2021. 8. 25. 12:03 Posted by 생각하는로뎅
반응형

화면 전환 방법은 2가지가 있었다.

 

첫번째. showDetailViewController

두번째. 세그웨이(Segue)

 

 

 

1. showDetailViewController 을 이용한 화면 전환

 

  1) 이동할 Scene 목적지에 id 지정 

 

 

  2) 화면 이동 소스

 

 
let stortboard = UIStoryboard.init(name: "메인 스토리 보드 Name", bundle: nil)
let controller = stortboard.instantiateViewController(identifier: "이동할 storyboard Id") as! 이동할 ui view controller class

// 스크린 이동
showDetailViewController(controller, sender: nil)

  

 

 

2. 세그웨이를 이용한 화면 전환

 

  1) Table Cell 을 클릭 후, Ctl을 누른채로 이동할 화면으로 드래그 앤 드롭

 

 

  2) Selection Segue 에 Show 를 클릭. 그 후, 2. 생성되면 맵핑 완료

 

 

  3) 1. 을 클릭 후, id 를 지정

 

 

// 세그웨이 작동시, 호출되는 곳
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        
        // 클릭한 셀 id 가 newsDetail 이라면
        if let id = segue.identifier, "newsDetail" == id {

            // newsDetail과 연결된 ViewController 가져오기
            if let controller = segue.destination as? NewsDetailControlle {
             
             	// 선택한 셀 index 가져오기
                if let index = tableViewMain.indexPathForSelectedRow {
                    
                }
                
            }
            
        }
    }
반응형