내 스토리 보드에 테이블보기가 있습니다. viewDidLoad에서로드 된 JSON 파일에서로드 된 데이터를 사용하여 해당 테이블 뷰를 채 웁니다.UITableView가 스크롤 할 때 겹치다
내 UITableView에서 "프로토 타입 셀"을 1로 설정 했으므로 액세서리를 쉽게 선택할 수 있습니다. 내 프로토 타입 셀에는 선택한 항목의 세부 정보를 표시해야하는 새보기가있는 Seque가 있습니다. 내 세포를 작성하고 있습니다
프로그래밍이 사용 :
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *videoTableIdentifier = @"VideoCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:videoTableIdentifier];
if (cell == nil)
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:videoTableIdentifier];
UILabel * title = [[UILabel alloc] initWithFrame:CGRectMake(40,5, 240,20)];
[cell addSubview:title];
[title setText:[[videos objectAtIndex:indexPath.row] objectForKey:@"title"]];
UILabel * detail = [[UILabel alloc] initWithFrame:CGRectMake(40,28, 100,10)];
[cell addSubview:detail];
[detail setText:[NSString stringWithFormat:@"Year: %@", [[videos objectAtIndex:indexPath.row] objectForKey:@"year"]]];
[cell addSubview:[[UIImageView alloc] initWithImage:[UIImage imageNamed:[[videos objectAtIndex:indexPath.row] objectForKey:@"image"]]]];
return cell;
}
나는 다음과 같은 스크롤 시작 발생합니다
그래서 나는 솔루션을 찾고 시작하고 내가 설정 한 것으로 나타 : dequeueReusableCellWithIdentifier:videoTableIdentifier
을 "nil"로 설정하십시오.
내 문제가 해결되었지만 BUT 지금 프로토 타입 셀 액세서리 및 Seque가 없어져 더 이상 다음보기로 이동할 수 없습니다.
인터넷에서이 문제에 대한 해결책을 찾을 수 없었으므로이 질문을하기로했습니다. 누군가가 도울 수 있다면 정말 좋을 것입니다.
내가 생각하기에, 내가 세포를 재활용하는 것에 대해 읽었 기 때문에, 나는 그것을 고치는 법을 알 수 없었다. 텍스트 만 겹치거나, 이미지가 서브 뷰일 경우에도 마찬가지입니다. – ronnyrr
이미지가 다른 이미지와 겹치고 있습니다. –
if (cell == nil) 조건에서 실제로 addSubview 코드를 이동할 수 있으며 UITableViewCell을 서브 클래 싱하지 않아도 잘 작동합니다. 하지만 여전히 사용자 지정 하위 클래스를 만드는 것이 더 나은 방법이라고 생각합니다. – Lukas