코딩없이 새로운 xcode 프로젝트 만 만들었습니다. 방금 스토리 보드에서 일했습니다. 거기에 내비게이션 컨트롤러가 있습니다. 내 RootViewController에는 3 섹션 (그룹화 된)에 정적 셀이있는 TableView가 있습니다. 섹션 헤더를 삭제했습니다. 다음 단계는 섹션 사이의 거리를 변경하는 것이 었습니다. 상단에는 4, 하단에는 4라고했습니다. 이제 다음과 같이 보입니다 :
이제 내 문제 : 첫 번째 섹션과 상단 사이의 크기가 실제로 큽니다 (섹션 사이의 자동 거리이기 때문에 32라고 생각합니다). 내가 찾은 곳은 크기 관리자-내용 삽입물이었습니다. 자동으로 설정되어 있습니다. 옵션이 없으면 나 자신에게 몇 가지 가치를 넣을 수 있습니다. 내가 선택하지 않으면 섹션이 루트 뷰 컨트롤러 헤더 아래에 표시됩니다. 내 크기 관리자는 다음과 같습니다.ViewController 상단과 첫 번째 섹션 사이의 크기를 줄이는 방법을 알려줄 수 있습니까? 정확히 첫 번째 섹션과 Root View Controller의 헤더 사이의 크기는 16입니다.
다가오는 내비게이션 컨트롤러가 첫 번째 섹션과 헤더 사이의 크기가 16 인 테이블 뷰를 갖도록 전체 프로젝트를 변경하는 방법이 있습니까?
내가 시도한 것 :이 질문을 찾았습니다 iOS7에서 UITableViewStyleGrouped 스타일로 UITableView 상단에 왜 추가 패딩이 있습니까? 여기서 누군가가 tableViews를 요청했습니다. 일반. 내가 읽은 솔루션은 저에게 효과적이지 않습니다.
- 스크롤보기 삽입 조정을 끕니다. 나는 네비게이션 컨트롤러뿐만 아니라 루트에서도 이것을 시도했다. 또한 코드에서 문제를 해결하려고했습니다.
- viewDidLoad에서 edgeForExtendedLayout을 none으로 설정하십시오. 아무것도 변경되지 않았습니다.
- 첫 번째 섹션의 헤더 만 1로 설정하십시오.
- self.navigationController? .navigationBar.isTranslucent = 변경 사항 없음
반 정확 :한 솔루션이 코드에서 contenInset을 수동으로 변경했습니다. 내 코드에 16 점을 세게 입력해야하기 때문에 이것을 좋아하지 않습니다. 32의 헤더가 어디에서 왔는지 모르겠습니다. 그래서 나는 16 포인트가 영원히 머무를 지 모른다. 미래에도 안전한 솔루션을 원합니다. 이것이 어려운 해결책이었습니다.
self.tableView.contentInset = UIEdgeInsetsMake(-16, 0, 0, 0)
-
답변 # 1
-
답변 # 2
iOS11 순수 코드 솔루션
순수한 코드로 이것을하고 35px 빈 공간을 제거하려는 사람은
tableHeaderView
를 추가해야합니다. 그들의tableView
에 -nil
로 표시됩니다 기본 크기를 35px로 설정즉,
tableView.tableHeaderView = tableHeaderView var tableHeaderView:UIView = { let view = UIView() view.frame = CGRect(x: 0, y: 0, width: tableView.bounds.width, height: CGFloat.leastNormalMagnitude) return view }()
참고기기 너비는 경계/뷰 너비이며 높이는아닙니다
0
-하지만CGFloat.leastNormalMagnitude
관련 자료
- 애니메이션 후 신속한 변경보기
- ios - Swift Package Manager에서 라이브러리 버전을 변경하는 방법은 무엇입니까?
- ggplot2 - R에서 막대와 Y 축 사이의 거리를 변경하는 방법
- swiftui - Swift 클래스에서 @State var를 변경하는 방법
- ios - Swift의 CoreLocation으로 실시간 거리 측정
- 신속한 "배열의 항목 변경"Noobie in swift
- reactjs - React Navigation 5에서 탭바 아이콘 사이의 거리를 어떻게 바꿀 수 있나요?
- ios - 탐색 막대 항목을 동적으로 변경 - 빠른
- Swift 5에서 카운팅 레이블 텍스트를 변경하는 방법
- ios - 자동 갱신 구독 빠른 변경
- ios - Objective-C 또는 Swift의 Jaro Winkler 거리
- ios - 테이블보기 하단 제약이 애니메이션/변경되지 않음
- ios - indexPath Swift에 따라 TableView에서 UiCell 텍스트 색상 설정
- ios - RxSwift가 tableView 모델을 인식하지 못함
- ios - 'Type'PublicTableViewController '에'handleRefresh '멤버가 없습니다라는 오류가 표시되는 이유
- ios - segues를 사용하여 다른 ViewController에서 tableView 업데이트
- ios - tableViewCell에서 저장된 값에 액세스하고 firebaseDatabase에 저장
- ios - 사용자 정의 UIButton TableView가 응답하지 않음
- ios - Swift에서 TableView에 기본 텍스트를 추가하는 방법
- ios - Swift에서 UITableView의 왼쪽 및 오른쪽 여백을 설정하는 방법
- ios - 새 항목을 추가 한 후 UITableView가 새로 고쳐지지 않습니다
이 최상위 공간은 그룹화 된 스타일 tableView 헤더에서 비롯됩니다. 표 상단에 표 헤더보기를 추가하고 색상을 "그룹 표보기 배경색"으로 설정 한 다음 높이를 원하는 크기로 설정할 수 있습니다 (16).