【发布时间】:2015-08-14 03:20:56
【问题描述】:
我正在尝试使用动画块来扩展 UIView,效果很好。但是,我希望 UILabel 从 0 开始,每 0.01 秒加 1,直到达到 100。 我在动画之后创建了一个线程来完成此操作,它可以工作,但它会导致我设置的动画什么都不做。 我尝试了很多不同的事情,但没有运气。实现这一目标的最佳方法是什么?
我最简单的尝试与所有其他的结果相同:
[UIView animateWithDuration:1 animations:^{
_lView.frame = CGRectMake(_lView.frame.origin.x,_lView.frame.origin.y+_lView.frame.size.height,_lView.frame.size.width,-500);
}];
[[[NSThread alloc]initWithTarget:self selector:@selector(startcounting) object:nil]start];
-(void)startcounting{
for(int x=0; x<100; x++){
[NSThread sleepForTimeInterval:0.01];
++_mcount;
dispatch_async(dispatch_get_main_queue(), ^{
_cLabel.text = [NSString stringWithFormat:@"%i",_mcount];
});
}
}
【问题讨论】:
标签: ios objective-c multithreading animation uiview