2
UITableview에 재사용 가능한 셀이 있으며 특정 셀에만 사용자 정의 이미지를 추가하고 싶습니다.UITableView의 특정 재사용 가능한 셀에 사용자 정의 하위 뷰 추가
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
BCContactCell * cell = [tableView dequeueReusableCellWithIdentifier:contactCellIdentifier];
...
if ([contact isFavorite]) {
UIImageView * fav = [[UIImageView alloc] initWithFrame:CGRectMake(280.0f, 2.0f, 32.0f, 32.0f)];
[fav setImage:favoriteImg]; // already loaded
[cell addSubview:fav];
}
}
그것은 작동하고, 모든 좋아하는 접촉은 셀의 사진을 가지고
여기에 예를 들어, 내 코드입니다. 아래로 스 와이프 할 때를 제외하고 다른 셀도 사진을 찍기 시작합니다. 알아낼 수 없습니다.
누구나 어떻게 할 수 있습니까?
감사합니다.
다음
내 문제가 해결되었습니다. 빠른 답변과 설명을위한 Thx. – DCMaxxx
당신은 셀 재사용을 잊어 버렸습니다. 즉, [tableView dequeueReusableCellWithIdentifier : contactCellIdentifier]에 대한 호출에서 이미 사용 된 셀을 가져올 때마다 그림이 복제됩니다. 재사용 된 셀에서 그림은 이미 하위보기로 추가 될 수 있지만 어쨌든 새 그림을 추가 할 수 있습니다. 이미지 뷰가 이미 존재하는지 확인한 후 새 뷰를 생성해야합니다. 또한 이미지를 제거하는 데주의하십시오. 태그 1290이있는 이미지 뷰를 사용할 수없는 경우, viewWithTag에 대한 호출은 nil을 반환하고 removeFrom Superview를 호출 할 수 없습니다. – smat88dd