2013-02-04 2 views
0

UIImageView를 사용하여 램프를 켜고 끕니다. 나는 두 개의 이미지를 가지고 있는데 하나는 빛과 다른 이미지가 없다. 이 작업은 매우 간단해야하며 문제없이이 작업을 수행했음을 확신합니다. 그러나 코드는 작동하지 않습니다. 다음은 내가 가지고있는 것입니다.UIImageView 애니메이션이 작동하지 않습니다.

UIImage *glow = [UIImage imageNamed:@"Glow.png"]; 
UIImage *noGlow = [UIImage imageNamed:@"No Glow.png"]; 
NSArray *images = [NSArray arrayWithObjects:noGlow, glow, nil]; 

self.lampImage.animationImages = images; 
self.lampImage.animationDuration = 1.0; 

[self.lampImage startAnimating]; 

NSLog(@"%d", self.lampImage.isAnimating); // prints 1 
NSLog(@"%d", self.lampImage.animationRepeatCount); // prints 0 

현재이 코드는 내 viewDidLoad에 있습니다. 위 코드로 앱을 실행하면 NoGlow 이미지 만 보입니다. 이미지 배열 (glow, noGlow, nil)에서 순서를 바꿔서 앱을 다시 실행하면 대신 Glow 이미지가 표시됩니다.

로그에 따르면 애니메이션이 적용되고 반복 횟수는 0이며 무기한 애니메이션을 유지해야 함을 의미합니다. 애니메이션이 보이지 않는 이유는 무엇입니까?

iOS 5.1 및 6.1 시뮬레이터에서이 결과를 모두 테스트하고 있습니다.

+0

두 이미지가 모두 같지 않은지 확인 했습니까? 나는 코드를 풀어 냈고 그것은 나를 위해 일했다. 이미지가로드되어 있고 nil이 아닌지 확인하십시오. 또한 xib 파일에서 생성 된 경우 lampImage라는 imageView가 연결되어 있는지 확인하십시오. – NDY

+0

애니메이션보기 및 자동 되감기를 추가하여보기가 표시되기 전에 애니메이션이 적용되지 않는지 확인하십시오. – Eric

+0

나는 viewDidLoad 메서드, Eric에서 시도해 보았고 테스트 프로젝트에서 작동했습니다. – NDY

답변

1

오류는 파일 또는 이미지 이름과 다른 이름 일 수 있습니다. 파일의 이름을 바꾸려고합니다. No Glow.png가있는 No Glow.png가 오류가 아니므로

+1

이 글을 읽을 다른 사람들에게 분명히 말하십시오. 파일 이름에 공백이있는 파일을 명명하는 것은 문제가되지 않습니다! – NDY

+0

파일 이름에 공백을 사용하지 않는 것이 좋습니다! –

+0

예, 정확한 답변은 아니지만 문제를 해결하는 데 도움이되는 답변입니다. 내 이미지의 이름은 "NoGlow.png"였지만 코드에서 "No Glow.png"로 참조했습니다. Xcode 프로젝트에서 이름에 공백이 있고 문제가없는 이미지를 자주 사용했습니다. – beev

관련 문제