내 스토리 보드에서 왼쪽 막대 버튼 항목으로 취소 버튼을 추가 한 UITableViewController
(UINavigationController
에 임베드 됨)이 있습니다.UINavigationController bar의 기본 '편집'버튼을 억제하는 방법은 무엇입니까?
실행시 CANCEL 버튼은 나타나지 않지만 EDIT 버튼은 실행됩니다.
내가 명시 적으로 EDIT 버튼을 추가하지 않은 때문에 비활성화 된 상태에서 편집 기능의 기본 구현을 지켰다 :
// Override to support conditional editing of the table view.
override func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool {
// Return false if you do not want the specified item to be editable.
return false
}
내가 편집 버튼이 줄을 숨길 수있는 방법을 검토 한 결과 코드 작동 :
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationItem.leftBarButtonItem = nil
}
... EDIT 버튼이 숨겨져 있습니다. 그러나 CANCEL과 다른 모든 버튼을 숨 깁니다.
나는 명시 적으로 EDIT 버튼을 보여줍니다 코드, 즉 :
self.navigationItem.leftBarButtonItem = self.editButtonItem
를 발견했다 그러나 취소에 대한 동등한를 찾을 수 없습니다.
그래서 EDIT 버튼을 숨기고 CANCEL 버튼을 표시하는 방법이 있습니까?
--- UPDATE # 1 ---
은 이미 부착 된 스크린 샷마다 함께 IBOutlet을 통해 내 클래스 코드에 취소 버튼을 연결했다.
--- UPDATE # 2 ---
는 지금
tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath)
및
tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath)
이 주석 처리되어 있음을 보장했다. 그래서, 내가 말할 수있는 한, 행 편집을 가능하게하는이 TableViewController에 대해서는 아무것도 없습니다. 아직 'EDIT'버튼이 계속 나타나고 'CANCEL'버튼이 난독 화됩니다.
스토리 보드의 스크린 샷이 도움이 될 것입니다. –
취소 버튼과 편집 버튼이 모두 왼쪽에 있습니까? 그렇다면 반드시 취소 버튼의 제목을 변경하고 해당 버튼이 부울 값으로 선택되었는지 확인하고 코드 및 제목을 변경해야하는지에 대해 한 가지해야합니다. – Akash
@Akash, 내가 무엇을 요구하는지 정확히 모르겠습니다. 나는 이것을 '취소'보다는 '커스텀'시스템으로 바꾸려고 노력했다. 단추의 제목도 변경했지만 변경하지 않았습니다. 그리고 그 버튼이 bool value로 선택되어 있는지 확인하면 무엇을 의미합니까? – Dave