2017-11-11 18 views
0

UITableViewCell이 에 생성되어 UITableViewCellUITableView이 있습니다.TableViewCell에서 Controller MVC로 데이터를 전송합니다.

모두 UITableViewUITableViewCell에는 별도의 하위 클래스 파일이 있습니다. UITableViewCell -Subclass에는 TextField에 연결된 값의 대리자 동작이 변경되었습니다. 이제이 Textfield 값이 변경 될 때마다 (함수가 호출 됨) 처리 될 값인 ViewController으로 값을 전달해야합니다.

MVC 원칙에 관해서 어떻게 했습니까?

답변

1

블록이나 위임을 사용하거나 값을 ViewController로 다시 전달할 수 있습니다. UITableViewCell 서브 클래스 내부

이제 ViewController이 위임에 연결 대리인에게

protocol TableViewCellDelegate { 
    func new(value: Any) // your data type here 
} 

class MySubclass: UITableViewCell { 
    weak var delegate: TableViewCellDelegate? 
} 

을 선언합니다. 당신은 거기에서의 값 변경 위임 안쪽 UITableViewCell

UICollectionViewCell 서브 클래스로 통과 할 수있는 UITextField 당신은 당신의 방법 데이터의 ViewController

에 다시 전달 될 수

self.delegate?.new(value: "NewTextHere!") 

이 방법을 호출

+0

매우 명확한 답변을 해주셔서 감사합니다. 나는 이것을 내 프로젝트에 성공적으로 구현했다. – jeanggi90