如何为表视图单元格textLabel设置动画

时间:2014-05-30 12:22:14

标签: ios uitableview tableview

我有这个代码,我想动画这个。有人帮我请。当我运行代码时,它通常显示它!我只是想把它显示为动画textLabel。慢慢进来。 有人请帮帮我,有cell.ImageView的动画属性。但不适用于textLabel。

cell.textLabel.frame = CGRectMake(55, 143, 88, 24);

我试过这个,但它没有用,

[UIView animateWithDuration:0.036 animations:^{
                   cell.textLabel.frame = CGRectMake(55, 143, 88, 24);
                    } completion:nil];
                [UIView commitAnimations];

3 个答案:

答案 0 :(得分:1)

可能你正在寻找,

[UIView animateWithDuration:0.25 animations:^{
        cell.textLabel.frame =  CGRectMake(55, 143, 88, 24);
    }];

答案 1 :(得分:0)

UILabel的alpha属性是可动画的。您可以在创建时将alpha设置为0(完全透明),然后将alpha设置为1.0(完全不透明)。这可以这样实现:

首先在tableView:cellForRowAtIndexPath:中将您的单元格textLabel的alpha设置为0.0,以及此处您想要的任何其他代码。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];

    cell.textLabel.text = [NSString stringWithFormat:@"Cell %lu", indexPath.row];
    cell.textLabel.alpha = 0.0;

    return cell;
}

然后,您可以使用名为UIView的{​​{1}}上的类方法为其设置动画。我把它animateWithDuration仅用于此示例,但您应该可以在任何需要的地方执行此操作。

didSelectRowAtIndexPath

答案 2 :(得分:0)

[UIView animateWithDuration:0.25 animations:^{

    cell.textLabel.frame =  CGRectMake(55, 143, 88, 24);

    //You should force them to layout subviews again
    [cell layoutSubviews];

}];