2012-07-25 8 views
0

UITableview reloadData 함수가 cellforRowAtIndexPath 메소드를 호출하지 않습니다. 내가 시도했던 일을 다음과 같습니다Reload UITableView가 IOS5에서 작동하지 않습니다.

  1. 전화 [self.myTableView reloadData];
  2. 전화도 ViewWillAppearreloadData 방법.
  3. self.myTableView.delegate=self;self.myTableView.datasource=self도 기록됩니다.
  4. 또한 NSLog를 사용하여 행 수가 제대로 업데이트되고 있습니다.
  5. 데이터 원본 및 대리인이 스토리 보드에 연결되어 있습니다.

답변

0

보기가 UITableViewDelegateUITableViewDatasource과 일치합니까?

그리고 적어도 이러한 프로토콜에서 필요한 모든 메소드를 구현합니까? self.myTableView을 말할 필요도 없습니다. 수업을 진행하고 있다면 myTableView이라고 말하면됩니다.

어리석은 것처럼 들리지만 스토리 보드를 저장하는 것을 잊었습니까? 나는 한 번 이상 그 일을했습니다.

+0

프로그램을 빌드하거나 실행할 때 Xcode는 저장되지 않은 변경 사항을 저장 한 다음 코드를 컴파일합니다. – Srikanth

+0

이전 버전에서는 저장하지 않지만 스토리 보드를 사용하고 있다고 했으므로 최신 버전을 사용하고 있다고 생각합니다. –

+0

그것은 자동 저장입니다. 모든 데이터 소스 및 대리자 메소드가 구현됩니다. – Arvind

0

.h 파일에서 대리인을 선언하지 않은 것 같습니다.

예.

@interface ClassName:UIViewController <UITableViewDelegate> 
+0

나는 UITableViewDataSource뿐만 아니라 그것을 선언했다. – Arvind

0

이 방법을 구현 했습니까? 당신이 그것을이있는 tableview이 더 부분이 없다 생각하고 행을 요구하지 않습니다하지 않으면 기본적으로이 0

를 반환하기 때문에

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 
{ 
    return 1; //Return the number of sections you want 
} 

그것은 잊기 쉽다.

+0

예, 제가했습니다. 또한 한 가지 중요한 점은 올바른 식별자가있는 스토리 보드를 사용하여 맞춤 셀을 사용하고 있다는 것입니다. – Arvind

0

당신이 테이블 뷰의 위임 설정해야합니다 :

tableView.delegate = self; 

것은 그냥 확인 :

tableView.delegate = _an_object_that_conforms_to_UITableViewDelegate_; 

이 당신이 가진 것 있도록 테이블 뷰를 선언 한하는 뷰 컨트롤러가 정상적으로입니다 테이블 뷰가 포함되어 있고 위임자 역할을하는 뷰 컨트롤러는 자체적으로 UITableViewDelegate로 선언합니다.

+0

예, 제가했습니다. 또한 한 가지 중요한 점은 올바른 식별자가있는 스토리 보드를 사용하여 맞춤 셀을 사용하고 있다는 것입니다. – Arvind

관련 문제