2009-05-09 5 views
12

UITableView는 iPhone에서 많은 탐색 및 환경 설정보기를 지원하는 매우 강력한 클래스입니다. 좋아하는 UITableView/UITableViewCell 트릭은 무엇입니까?

  • 등 좋은 스크롤 속도를 보장하는 테이블 셀에 대한 인터페이스 빌더를 사용
  • 만드는 방법
  • 선호 스타일의 세포
  • 하는

    • 다양한 방법 : 많은 사람들이 유용한 jQuery과 팁, 트릭과 샘플 올라와있다

    질문 당 팁 하나 인 UITableView 사용에 대한 유용한 팁을 게시하십시오. Stack Overflow에서 찾은 것들과 내 북마크에서 찾은 것들을 게시하여 시작할 것입니다.

  • 답변

    0

    그룹화 된 환경 설정 테이블 : Three20 라이브러리 (Facebook iPhone 앱에서 추출)에는 다양한 컨트롤이 포함 된 기성품 셀 세트가 있습니다.

    (물론 사용하고 싶지는 않습니다.) Three20은 모든 것을 하위 클래스로 만들고 확장하려고하므로 프로젝트에 다소 혼란을줍니다. 하지만 최소한 예제로 사용할 수 있습니다.)

    +2

    는 또한 Three20에 대해 같은 생각. 나는 뭔가를 원하는 방식으로 작동하지 않을 때마다 바퀴를 재발 명하려고 할 때 실제로 프로젝트에 바로 통합 할 의향이 없습니다. 하지만, 그 뒤에있는 사람은 심각한 코코아 모조를 가지고 있다는 것을 인정해야합니다. 그리고 당신은 그의 트릭에서 영감을 얻을 수 있습니다. –

    +0

    네, 엄지보기에 사용했지만 잠시 후 다시 구현했습니다. 그런 단순한 사용에 많은 어려움을 겪습니다. 그래도 꽤 도서관입니다. –

    9

    UITableViewController가 실제로하는 일은 궁금한가요?

    • viewWillAppear에서 animated:YES으로 선택된 행을 선택 취소합니다.

      UINavigationController에서 다시 탐색 할 때 이전에 터치 한 행이 애니메이션으로 멋지게 선택 취소 된 이유가 여기 있습니다. 새보기 컨트롤러를 UINavigationController에 푸시하면 행이 선택된 상태로 남아 있습니다. 그것을 pop하고 table view로 돌아 가면, viewWillAppear는 그 행을 시작하고 선택을 해제합니다. UINavigationController는 이런 일에 대해서조차 모릅니다.

    • viewWillAppear에서 테이블보기에 행이없는 경우 reloadData을 호출합니다.

    • viewDidAppear에서는 flashScrollIndicators을 호출합니다.

    • 키보드보기 및 사라짐을 모니터링하고 테이블보기의 텍스트 필드를 탭할 때 키보드가 표시된 후에도 볼 수 있도록 테이블보기의 크기를 적절하게 조정합니다.

    키보드 모니터링 동작이 필요하지 않으면 필요한 경우 다른 모든 작업을 수행하는 것이 매우 쉽습니다.

    +0

    테이블을 키보드에서 자유롭게 움직이는 것을 보지 못했습니다. 직접 구현해야했습니다. 이 작업을 수행하는 모든 트릭이 있습니까? –

    +0

    @ 코리 엠씨. UITableViewController에는이 작업을 수행하는 코드가 포함되어 있습니다. 감사합니다. 감사합니다. –

    +2

    트릭은 해당 메소드를 재정의 할 때 super를 호출하는 것입니다. –

    2

    좋은 성능 스크롤을 보장하려면 가능하면 모든 요소의 투명도를 피하는 것이 중요합니다. 따라서 사용자 지정 셀을 만들면 모든 셀을 불투명하게 만들고 배경을 올바르게 설정하십시오.

    Core Animation Performance Tool을 사용하여 셀에서 수행중인 투명도를 시각적으로 볼 수 있습니다.이 도구를 사용하려면 장치에서 실행 중이어야합니다. 당신이 분리 라인을 제거하려면

    3

    , 이것을 사용 :

    [self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone]; 
    
    관련 문제