UItable ViewCell 분할선 제거 방법
8004 단어 UITableViewSwiftiOS
이번 보도의 목록은 다음과 같다.
모든 칸의 구분선 삭제
우선 모든 칸의 구분선을 없애는 방법부터 시작한다.
Storyboard에서 설정할 때 TableView의 Separator 위치를 None으로 변경합니다.
설정 전
설정 후
설정을 반영하면 다음과 같습니다.
설정 반영 전
설정 반영 후
참고로 코드로 쓰면 다음 코드를 추가하면 구분선을 똑같이 삭제할 수 있다.
Swift
tableView.separatorStyle = .none
부분 칸의 구분선 삭제
그러면 일부 칸의 칸막이를 없애려면 어떻게 해야 하나요?
예를 들어, UItableView에는 A라는 셀 클래스와 B라는 셀 클래스가 있습니다.A의 칸에 칸막이를 표시하지만 B의 칸으로 삭제하려고 합니다.이런 상황에서
일부 칸의 구분선을 삭제하려면 Storyboard에서 설정할 수 없고 코드로만 설정할 수 있습니다.
Swift
cell.separatorInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: .greatestFiniteMagnitude)
tableView(_:cellForRowAt:)
로 이 코드를 추가합니다.Swift
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: UITableViewCell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
cell.textLabel?.text = "\(indexPath.section) - \(indexPath.row)"
// 2で割り切れない数だけ区切り線を表示
if indexPath.row % 2 == 0 {
cell.separatorInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: .greatestFiniteMagnitude)
}
return cell
}
상술한 코드를 사용하여 실시할 때는 다음과 같다.설정 반영 전
설정 반영 후
'전부'와'일부'는 무엇이 다릅니까?
다음은 잡담.
상술한'모든 칸의 구분선 삭제'와'일부 칸의 구분선 삭제'는 무엇이 다릅니까?
결론부터 말하면 다음과 같다.
예를 들어, UItableView에 표시된 빈 셀은 부분 셀 구분선을 제거하는 방법에는 설정이 반영되지 않습니다.
모든 셀의 구분선은 전체 UItableView 설정을 반영하며 빈 셀에서 구분선을 제거하는 설정도 반영합니다.
빈 칸 구분선 삭제
그러면 일부 칸의 구분선을 삭제하는 동시에 빈 칸의 구분선을 삭제하세요!이 상황에서 어떻게 하면 좋겠습니까?
다음 코드만 추가하면 빈 칸의 구분선이 사라집니다.
Swift
tableView.tableFooterView = UIView()
모든 셀의 구분선 표시부분 칸과 빈 칸의 구분선을 삭제합니다
그나저나 UItable ViewCell의 구분선은
UITableViewSeparatorView
인 것 같습니다.외부에서 들어오면 편할 것 같기도 하고.Reference
이 문제에 관하여(UItable ViewCell 분할선 제거 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/takashings/items/693ba4b31d07dbe90778텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)