- (void)setStrokeLabel:(BOOL)strokeLabel
{
    _strokeLabel = strokeLabel;
    if (_strokeLabel) {
        _timer = [NSTimer scheduledTimerWithTimeInterval:0.4 target:self selector:@selector(setStrokeThrough) userInfo:nil repeats:NO];
    } else {
        [self cancelStrokeThrough];
    }
}
- (void)setStrokeThrough
{
    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithAttributedString:self.attributedText];
    for (NSUInteger i = 1; i <= [attributedString length]; i++) {
        [attributedString addAttribute:NSStrikethroughStyleAttributeName
                                 value:[NSNumber numberWithInt:1]
                                 range:NSMakeRange(0, i)];
        self.attributedText = attributedString;
    }
}
- (void)cancelStrokeThrough
{
    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithAttributedString:self.attributedText];
    [attributedString removeAttribute:NSStrikethroughStyleAttributeName
                                range:NSMakeRange(0, [attributedString length])];
    self.attributedText = attributedString;
}
I want to animate strike-through, like todo done animation.
As I set timer for it, the timer only handle how to show the stoke through letter by letter?? 
 
     
    