В следующем коде текст повторяется для следующих строк: UILabel. Я знаю, что это проблема с возможностью повторного использования таблицы, но не могу понять, как ее решить. Все выглядит нормально даже при подсчете.Повторное использование UITableViewCell в нескольких разделах
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell;
//Doc Name
if(indexPath.section == 0)
{
cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if(cell==nil)
{
cell= [[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"]autorelease];
}
cell.textLabel.text= docName;
cell.textLabel.font=[UIFont fontWithName:@"Times New Roman" size:17.f];
UILabel *name = [[UILabel alloc]init];
name.backgroundColor = [UIColor clearColor];
name.textAlignment = NSTextAlignmentCenter;
name.frame = CGRectMake(600,2.0f,250,50);
name.text = @"11:12:01";
[cell addSubview:name];
}
//Joint Work
if(indexPath.section == 1)
{
cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if(cell==nil)
{
cell= [[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"]autorelease];
}
cell.textLabel.text= [jointWrkNames objectAtIndex:indexPath.row];
cell.textLabel.font=[UIFont fontWithName:@"Times New Roman" size:17.f];
}
//Detailing
if(indexPath.section == 2)
{
cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if(cell==nil)
{
cell= [[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"]autorelease];
}
cell.textLabel.text= @"Detailing";
cell.textLabel.font=[UIFont fontWithName:@"Times New Roman" size:17.f];
}
}
Используйте разные идентификаторы ячеек для иной, если заявления, в противном случае та же ячейка из очереди, и использовать повторно. Это довольно просто. – n00bProgrammer
Я не вижу, где вы вернете ячейку. Я был бы удивлен, если бы это сработало. – Jeremy
Я возвращаю камеру. он не пришел, когда я скопировал его. – LeXeR