두 개의 태그가있는 레이블을 포함하는 UITableViewCell을로드하고 있습니다. 사용자는 다음 코드가 포함 된 현재보기를 종료하고 다른보기로 이동합니다. 이름 값이 설정되고 사용자가이보기로 돌아옵니다 (아래 코드). 다른보기에서 설정 한 이름을 이름 레이블에 지정합니다. 그래도 작동하지만 다른 레이블 위에 새 레이블이 잘못 정렬됩니다. 이 셀의 두 가지 버전을 가지고있는 것 같습니다. 확실하지 않습니다. 그런 종류의 행동을 유발할 수있는 것에 대한 제안 사항이 있습니까? 이 코드의 모양에서nib 및 참조 구성 요소를 통해 셀로드
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = nil;
if(indexPath.section == 0)
{
cell = [tableView dequeueReusableCellWithIdentifier:@"CellNameIdentifier"];
if (cell == nil) {
[[NSBundle mainBundle] loadNibNamed:@"CellentName" owner:self options:nil];
cell = cellName;
//self.cellName = nil;
}
}
return cell;
}
- (void)viewDidAppear:(BOOL)animated {
UILabel *startdate = (UILabel *)[cellName viewWithTag:1];
startdate.text = aName;
[super viewDidAppear:animated];
}
나는 팔로우하지 않습니다. aName은 내 appdelegate 클래스에서 가져옵니다. 따라서 항상 인스턴스로 사용할 수 있습니다. 이 경우 두 번째보기로 개체 데이터를 전달할 필요가 없습니다. cellForRowAtIndexPath에 필요한 변경 사항은 "해당 객체에 저장된 내용이 모두 표시됩니다"라는 것입니다. – 4thSpace
개체를 속성으로 전달하고 조작하는 자세한 코드 예제는 SQLiteBooks 사과 예제 프로젝트를 참조하십시오. – slf