iOS 전역 주마등 배우 기
생각:
1.하나의 예 만 들 기
+ (instancetype)shareManager {
static CCPaomaView *pModel = nil;
static dispatch_once_t once;
dispatch_once(&once, ^{
pModel = [[CCPaomaView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, 0.0468 *KScreenHeight)];
});
return pModel;
}
2.받 은 데 이 터 를 로 컬 plist 에 저장 합 니 다.대량의 데이터 에 적용 되 지 않 습 니 다.첫 번 째 데 이 터 를 읽 을 때마다 전체 plist 를 삭제 하고 나머지 는 plist 에 다시 저장 합 니 다.3.애니메이션 에이전트 에 따라 감청 애니메이션 실행 이 끝나 면 애니메이션 인 스 턴 스 를 nil 로 설정 합 니 다.
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag{
NSLog(@"%@",[self.paomaLabel.layer animationForKey:@"paoMaDeng"]);
if ([self.paomaLabel.layer animationForKey:@"paoMaDeng"] == anim) {
//
[_array removeObjectAtIndex:0];
// plist
[CCPaomaModel removePaomaPlist];
//
[_array writeToFile:[CCPaomaModel filename] atomically:YES];
// , nil
_pmAniamtion = nil;
//
if (_array.count > 0) {
[self showPaomaView:self.superview];
}else{
self.hidden = YES;
[self removeFromSuperview];
}
NSLog(@"%@",self.array);
}
}
4.애니메이션 인 스 턴 스 가 비어 있 는 지 판단 하여 화면 전환,주마등 을 계속 합 니 다.다시 시작 하 는 것 이 아 닙 니 다.
- (void)paomaAniamtion:(CGFloat)count{
// , ,
if (_pmAniamtion == nil) {
_pmAniamtion = [CABasicAnimation animation];
_pmAniamtion.keyPath = @"transform.translation.x";
CGFloat W = CGRectGetWidth(_paomaLabel.bounds);
_pmAniamtion.fromValue = @(W);
_pmAniamtion.toValue = @(-W);
_pmAniamtion.duration = _aniTime;
_pmAniamtion.repeatCount = count;
_pmAniamtion.removedOnCompletion = NO; //
_pmAniamtion.fillMode = kCAFillModeForwards; //
_pmAniamtion.delegate = self; //
[_paomaLabel.layer addAnimation:_pmAniamtion forKey:@"paoMaDeng"];
}else{
_pmAniamtion.repeatCount = count;
}
}
5.화면 전환,애니메이션 일시 정지,복구
#pragma mark -- 、 , 、 、
- (void)viewWillAppear:(BOOL)animated {
[_paomaView showPaomaView:self.view];
[_paomaView resumeAnimation];
}
- (void)viewWillDisappear:(BOOL)animated {
[_paomaView pauseAniamtion];
}
말 이 많 지 않 습 니 다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
View의 레이아웃 방법을 AutoLayout에서 따뜻한 손 계산으로 하면 성능이 9.26배로 된 이야기이 기사는 의 15 일째 기사입니다. 어제는 에서 이었습니다. 손 계산을 권하는 의도는 없고, 특수한 상황하에서 계측한 내용입니다 화면 높이의 10 배 정도의 contentView가있는 UIScrollView 레이아...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.