UIButton 또는 UILabel과 같은 다른 객체가있는 UITableView가 포함 된 UIView (인터페이스 작성기에서)를 만드는 데 문제가 있습니다. UITableView는 항상 UITableView 객체 자체의 크기에 관계없이 UIView에서 최대 공간을 차지합니다. File Owner는 표준 UITableViewController입니다.UITableView는 인터페이스 빌더에서 사용 가능한 모든 공간을 사용합니다.
답변
:
프로그램이 이름을 가진 애플의 문서에서 찾을 수 있습니다 그들과 함께 처리하기위한 좋은 자원
이 작업을 쉽게 수행하는 방법은 다음과 같습니다.1) xib로 테이블보기 컨트롤러를 만듭니다.
2) .h 파일의 상속 된 형식을 UITableViewController에서 UIViewController로 변경하십시오.
3) 프로토콜 UITableViewDataSource, UITableViewDelegate를 .h 파일에 추가하십시오.
4) xib을 열고보기에 추가하십시오.
5)보기 아래의 xib에서 표보기를 끌어 원하는 크기로 조정합니다.
6) 파일 소유자의 "보기"속성을 UITableView 대신보기에 연결하십시오. 테이블 뷰의 데이터 소스 및 델리게이트 속성은 여전히 File 's Owner에 연결되어야합니다.
7) (선택 사항) 테이블보기에서 전달되는 테이블보기 컨트롤러 대리인 메서드 외부에서 테이블을 다시로드하거나 액세스하려는 경우 "myTable"등의 UITableView * IBOutlet을 만들고 IB에 표를 연결하십시오.
는또 다른 방법은, XIB으로 새 UIViewController에 만들 파일의 소유자로 XIB, 와이어 데이터 소스/대표에 테이블을 추가하고로에서 방법을 복사하는 데 사용하는 새로운있는 UITableViewController 클래스를 만드는 것입니다 보기 컨트롤러를 누른 다음 삭제하십시오.
이것이 올바른 방법입니다.Apple의 문서에서 : "관리 할 뷰가 테이블 뷰가 여러 하위 뷰 중 하나 인 복합 뷰이면 테이블 뷰 (및 다른 뷰)를 관리하기 위해 UIViewController의 사용자 정의 하위 클래스를 사용해야합니다. UITableViewController 왜냐하면이 제어기 클래스는 탐색 막대와 탭 막대 사이에 화면을 채우도록 표보기의 크기를 조정하기 때문입니다 (둘 중 하나가있는 경우). " – bpapa
또한 Kendall을 추가해야한다고 생각합니다. UIViewController 클래스의 속성으로 tableView를 명시 적으로 추가하고 IBOutlet으로 만들어야합니다. – bpapa
켄들/bpapa - 도와 줘서 고마워. 결합 된 답변을 사용하여 문제를 해결할 수있었습니다. bpapa의 마지막 코멘트에 대한 한 가지 - 내 UIViewController 클래스에서 "tableView"라는 속성을 만들어야했습니다. 그러나 IBOutlet으로 선언하거나 실제 tableView 자체에 IBOutlet을 연결하지 않은 경우에도 작동하는 것으로 보입니다. 나는 그것이 왜 작동하는지 알지 못했습니다. :-) –
인터페이스 빌더 (IB)에서 UITableView를 만드는 것은 나에게 매우 문제가되었습니다. 나는 처음 개발자로서 당신과 같은 문제에 부 닥쳤다. 많은 좌절감을 겪은 후에, UITableViews를 위해 IB를 포기했다.
나에게 가장 좋은 해결책은 프로그래밍 방식으로 UITableViewController (및 머리글로 사용하는 UINavigationController)를 구현하는 것이 었습니다. 전체 Model-View-Controller 패러다임을 파악하면 실제로는 매우 간단합니다.
"아이폰 OS 용 테이블보기 프로그래밍 가이드"
"아이폰 OS에 대한보기 컨트롤러 프로그래밍 가이드"
Kendall의 대답과 저의 의견을보십시오. 3.0 이후로, 애플은 더 나은 설명을 위해 문서를 정리했다. 이 접근법을 사용하면 Interface Builder에서 여전히 Table Views를 수행 할 수 있습니다. – bpapa
잘 고맙습니다. 감사합니다. –
코코아 사랑에 대해 Recreating UITableViewController to increase code reuse에 대한 기사가 있습니다. UITableViewController
을 사용할 수 없지만 UIViewController
이 동일한 방식으로 작동하는지 확인하려는 경우 유용합니다.
- 1. CSS - div 만들기 모든 사용 가능한 공간을
- 2. 인터페이스 빌더에서 UIImage보기 시프트
- 3. 인터페이스 빌더에서 소리가나요?
- 4. 는 프로그래밍 인터페이스 빌더에서 인터페이스 빌더
- 5. 사용 가능한 모든 공간을 차지하는 CSS 상자 스트레치
- 6. Silverlight :이 컨트롤이 사용 가능한 모든 공간을 차지하도록하려면 어떻게해야합니까?
- 7. 사이드 바는 사용 가능한 모든 공간을 채 웁니다.
- 8. 인터페이스 빌더에서 오브젝트 유형을 어떻게 사용합니까?
- 9. 인터페이스 빌더에서 불투명 문제가 발생했습니다.
- 10. 인터페이스 빌더에서 xib 너비 변경
- 11. 인터페이스 빌더에서 UIImageView의 이미지 설정
- 12. 인터페이스 빌더에서 이미지를 저장하고 스크롤합니까?
- 13. 인터페이스 빌더에서 라벨을 가로로 회전하십시오.
- 14. Silverlight MultiScaleImage에서 사용 가능한 공간을 채우지 않습니다.
- 15. JS를 사용하여 사용 가능한 공간을 채우려면 어떻게해야합니까?
- 16. GridLayout 행에 사용 가능한 공간을 채우는 방법?
- 17. Windows에서 사용 가능한 주소 공간을 어떻게 계산합니까?
- 18. PhoneGap에서 사용 가능한 디스크 공간을 어떻게 얻습니까?
- 19. 인터페이스 빌더에서 320을 사용하여 사용자 정의 테이블 셀 사용
- 20. UITableView 배경이 인터페이스 빌더에서 시뮬레이터에 표시됩니다.
- 21. 탭 빌더 컨트롤러가 인터페이스 빌더에서 열리지 않습니다
- 22. View Builder가 인터페이스 빌더에서 열리지 않습니다.
- 23. Xcode 인터페이스 빌더에서 로그 스타일 인쇄하기
- 24. 인터페이스 빌더에서 Xcode 4.0.2를 사용하여 ArrayController의 이름을 변경하는 방법
- 25. 인터페이스 빌더에서 선언 된 UITextField 수정하기
- 26. 인터페이스 빌더에서 1 : 다수의 관계를 바인딩하는 방법
- 27. 인터페이스 빌더에서 XIB 파일이 제대로로드되지 않습니다.
- 28. 인터페이스 빌더에서 메소드를 가져올 수 없습니다.
- 29. 인터페이스 빌더에서 동일한보기를 추가하면 어떻게됩니까? - iPhone
- 30. 애플의 인터페이스 빌더에서 다른 창 관리하기
"UITableView는 Interface Builder에서 사용 가능한 모든 공간을 사용합니다"와 같은 이름을 바꿀 수 있습니까? 현재 제목은 매우 설명 적이 지 않습니다. – Casebash