2012-08-16 10 views
0

HTML에서 데이터를 가져 오는 UITableView가 있습니다. 가져 오기가 정상적으로 작동하며 일반적으로 1, 2, 3, 4, 5에서 최대 20 개의 셀을 표시합니다.UITableView가 잘못 표시되지만 데이터가 전달됩니다.

그러나 가져온 후 셀은 첫 번째 모든 세포에 세포. (즉 1, 1, 1, 1, 1) 내가 아래로 스크롤하면 6, 7, 8, ..., 20이 보일 것입니다. 그리고 다시 위로 스크롤하면 테이블이 나타납니다. 정상 ...

나는 코드를 테스트하고 있었고, 0 인덱스에 삽입하면 insertNewObject 클래스에서 발견되었다. 그러면 모든 것이 정상이 될 것이다. 그러나, 단순히 개체를 추가하거나 마지막 색인에 개체를 삽입하면 나를 위해 작동하지 않습니다.

- (void)insertNewObject:(id)sender { 
    if (!_objects) { 
     _objects = [[NSMutableArray alloc] init]; 
    } 

// Working code, but I want the order from the top 1, 2, 3, ..., 20 rather than 
// 20, 19, 18, ..., 2, 1 
// [_objects insertObject:sender atIndex:0]; 

// And the code below doesn't show up correctly... 
// [_objects insertObject:sender atIndex:(_objects.count)]; 
// [_objects addObject:sender]; 

    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0]; 
    [self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic]; 
} 

내가 그것을 아래로 "깨끗한"디스플레이 I가 스크롤을 계속하면 jQuery과 모든 것을 잘 보여주기 때문에 도면 함께 할 수있는 뭔가 아주 이상한 생각하는 것 : 여기

는 insertNewObject 클래스 내 코드입니다 ...하지만 설정을하면 아무 일도 일어나지 않습니다 ... 테이블을 새로 고침해도 문제가 해결되지 않습니다.

아무 생각 없습니까? 감사합니다

+0

가 ... 처음에 넣어, 그리고 역으로 루프와 함께 UITable에 넣어 [은 insertObject을 _objects : 0]; 해결 방법이지만 올바른 방법이라고 생각하지 않습니다. 이 문제를 해결할 방법이 있습니까? – snowmen10

답변

0

확실하게 알고있는 질문에 충분한 컨텍스트가 없습니다. 그러나 아마도 당신이 여기에서 일하려고 노력 중일 것입니다. NSMutableArray 메서드 addObject:을 사용하여 새 개체를 데이터 배열의 끝에 추가 할 수 있습니다. 그렇게하면 reloadData을 호출 할 수 있으며 tableView는 새 데이터 항목의 셀을 포함하도록 자체를 다시 그립니다. 보낸 사람 atIndex : 나는 배열을 만든 좋아 ... 난 아주 바보 같은 짓을 한

- (void)insertNewObject:(id)sender 
{ 
    if (!_objects) { 
     _objects = [[NSMutableArray alloc] init]; 
    } 
    [_objects addObject:sender]; 
    [self.tableView reloadData]; 
} 
+0

나는이 방법을 시도했지만 여전히 1, 1, 1, 1, 1, 1, 7, 8, 9, ..., 20 ... 나는 위아래로 스크롤하여 세포를 "제거" 1, 2, 3, 4, 5, 6, 7, 8, 9, ..., 20 ...을 반환합니다. 매우 이상합니다 ... 전에 UITable – snowmen10

관련 문제