У меня есть таблица, для нее есть делегат cellForRowAtIndexPath, и у меня есть экземпляр UITableViewCell, созданный внутри этого метода, который я возвращаю. Где-то в cellForRowAtIndexPath я также добавляю UIButton в cell.contentView этой ячейки. Все работает нормально, пока я не выберу эту ячейку с кнопкой. Ячейка меняет цвет на синий (что нормально), uibutton меняет свой цвет также на синий. Теперь, если я нажму на эту кнопку UIB внутри выделенной ячейки, она просто исчезнет! Вау, это странно, как мне это исправить? Я хочу, чтобы UIButton внутри выбранной ячейки оставался, когда я щелкаю по ней.
Редактировать: включена моя реализация cellForRowAtIndexPath
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *sectionsTableIdentifier = @" sectionsTableIdentifier ";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: sectionsTableIdentifier];
for (UIView *view in cell.contentView.subviews)
[view removeFromSuperview];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero
reuseIdentifier: sectionsTableIdentifier] autorelease];
}
CGRect newIconRect = CGRectMake(276, 40, 29, 29);
UIButton *newIcon = [[UIButton alloc] initWithFrame:newIconRect];
[newIcon setImage:[UIImage imageNamed:@"mynewicon.png"] forState:UIControlStateNormal];
[cell.contentView addSubview:newIcon];
[newIcon release];
return cell;
}