Hey, ik zit met een probleempje bij m'n UITableView.
Ik heb dus een button op mijn cell's en deze zou ik graag een actie laten doen door erop te klikken. Aangezien je geen paramaters kunt opgeven in een selector, zet ik de tag van de cell naar het indexPath.
Met het reusen van cellen valt dit zwaar tegen (indexen kloppen niet) dus teken ik die button etc buiten de normale structuur:
Code:
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
CGRect CellFrame = CGRectMake(0, 0, 300, 60);
cell = [[[UITableViewCell alloc] initWithFrame:CellFrame reuseIdentifier:CellIdentifier] autorelease];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
cell.accessoryType = UITableViewCellAccessoryNone;
CGRect imageFrame = CGRectMake(10, 10, 77, 76);
image = [[UIImageView alloc] initWithFrame:imageFrame];
image.tag = 1;
image.contentMode = UIViewContentModeScaleAspectFit;
//image.backgroundColor = [UIColor redColor];
[cell.contentView addSubview:image];
[image release];
}
image = (UIImageView *)[cell.contentView viewWithTag:1];
CGRect linkButtonFrame = CGRectMake(290, 4, 30, 30);
link = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
link.frame = linkButtonFrame;
link.tag = indexPath.section;
[link addTarget:nil action:@selector(link:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:link];
return cell;
Maar nu wordt die disclosure button nu telkens getekend over een vorige versie? Bij het scrollen wordt het randje telkens zwarter en zwarter..
Heeft iemand een passende oplossing?
Thx!