Создать подкласс UITableViewCell
.Добавьте UITextField
или UITextField
(в зависимости от того, что подходит для вашего решения) к contentView
и сделайте их скрытыми.Переопределите метод `-setSelected: animated: ':
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];
if ( animated ) {
// using old-school UIView animation support to fade in/out controls,
// block-based much easier, but only 4.0 or greater
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];
self.textLabel.alpha = (selected) ? 0.0 : 1.0;
self.detailTextLabel.alpha = (selected) ? 0.0 : 1.0;
// assumed you added a UITextView 'textView' ivar
self.textView.alpha = (selected) ? 1.0 : 0.0;
[UIView commitAnimations];
}
else {
self.textLabel.hidden = selected;
self.detailTextLabel.hidden = selected;
self.textView.hidden = !selected;
}
}
- (void)animationDidStop:(NSString *)animationID finished:(BOOL)finished context:(void *)context
{
self.textLabel.hidden = self.selected;
self.detailTextLabel.hidden = self.selected;
self.textView.hidden = !self.selected;
}