29,049
社区成员




//类A:
[_lock lock];
[NSThread detachNewThreadSelector:@selector(moveChess) toTarget:self withObject:nil];
[_lock lock];
NSLog(@"_lock locked");
[_lock unlock];
/*使用定时则可以调用animationDidStop
[NSThread detachNewThreadSelector:@selector(moveChess) toTarget:self withObject:nil];
[NSThread sleepForTimeInterval:0.5f];
*/
//moveChess
-(void)moveChess{
NSLog(@"moveChess... ...");
[self->_delegate moveChess:_preTag toTag:_tag];
}
//viewcontroler
//委托方法:移动棋子动画
-(void)moveChess:(int64_t)fromTag toTag:(int64_t)toTag{
UIButton * btn1=(UIButton*)[self.view viewWithTag:fromTag];
UIButton * btn2=(UIButton*)[self.view viewWithTag:toTag];
CABasicAnimation *anima = [CABasicAnimation animationWithKeyPath:@"position"];
anima.fromValue = [NSValue valueWithCGPoint:btn1.center];
anima.toValue = [NSValue valueWithCGPoint:btn2.center];
anima.duration = 0.5f;
[_chessBtn[fromTag%100].layer addAnimation:anima forKey:@"moveChessAnimation"];
}
//
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag
{
NSLog(@"fdsafdsa1");
[self->_game->_lock unlock];
NSLog(@"unlock");
}
//