나는 아래 코드를 사용하여 화면에서 "fly"로 만드는 10 개의 반딧불이 있습니다. 코드는 또한 화면에 반딧불이를 유지하는 역할을합니다.이미지가 iOS에서 화면의 가장자리를 칠 때
- (void)viewDidLoad
{
[super viewDidLoad];
NSArray *blueArray = [NSArray array];
blueArray = [[NSArray alloc] initWithObjects:
[UIImage imageNamed:@"blue1.png"],
[UIImage imageNamed:@"blue2.png"], nil];
blue.animationImages = blueArray;
blue.animationDuration = 0.20;
blue.animationRepeatCount = -1;
[blue startAnimating];
bluepos =CGPointMake(2.0, 1.5);
}
-(void) someMethod {
endingAnimationTimer = [NSTimer scheduledTimerWithTimeInterval:(0.03) target:self selector:@selector(makeFly) userInfo:nil repeats:YES];
}
-(void) makeFly {
blue.center = CGPointMake(blue.center.x+bluepos.x, blue.center.y+bluepos.y);{
if(blue.center.x > 480 || blue.center.x <0)
bluepos.x = -bluepos.x;
if(blue.center.y > 320 || blue.center.y <0)
bluepos.y = -bluepos.y;
}
}
다음은 반딧불는 화면과 화면에 반딧불 이미지 자체를 유지하기 위해 반대 방향의 가장자리를 쳤을 때 그들이 보이는 때문에 여전히 인접 방향을 "직면"된다는 점을 제외하고 잘 작동 "비행" 반 시간 뒤로 비행하고있다.
반딧불이 화면 가장자리에 부딪 칠 때 방향을 바꾸고 이미지 자체가 뒤 바뀌도록 설정하고 싶습니다. 나는이 일 것이라고 생각
@synthesize blueIsFacingRight;
-(void) makeFly {
blue.center = CGPointMake(blue.center.x+bluepos.x, blue.center.y+bluepos.y); {
if(blue.center.x > 480) {
if (blueIsFacingRight == YES) {
blue.transform = CGAffineTransformMakeScale(-1, 1);
blueIsFacingRight = NO;
}
bluepos.x = -bluepos.x;
}
if(blue.center.x <0) {
bluepos.x = -bluepos.x;
if (blueIsFacingRight == NO) {
blue.transform = CGAffineTransformMakeScale(1, 1);
blueIsFacingRight = YES;
}
}
if(blue.center.y > 320)
bluepos.y = -bluepos.y;
if(blue.center.y <0)
bluepos.y = -bluepos.y;
}
}
하는 .m에서 .H
@property (nonatomic, assign) BOOL blueIsFacingRight;
에서
하지만이 "벽"에 도달 할 때 이미지가 반전되지 않습니다
나는이 시도왜이 작동하지 않는 이유와 더 나은 이유가 eff 메신저 찾고있어?
당신의 오른쪽, 복사 및 붙여 넣기가 저를 알아 들었습니다. 그러나 문제를 해결하지 못했습니다 고정, 이미지 여전히 변경되지 않습니다 위의 내 편집을 참조하십시오 UIImageView 실제로 이미지의 배열 그래서 그것은 fireflie의 날개가 될 것 같아요 배열 원인 변형 작동하지? – DelightedD0D