0

我有一个 ViewController,其中包含几个 UILabel、一个 UIImageView 和一个 ADBannerView。有两个相关的动作:UIImageView 根据用户手持设备的角度旋转,ADBannerView 根据是否有 iAD 显示滑入视图。

如果 UIImageView 是静止的,则 ADBannerView 会正确滑入视图。但是,一旦 UIImageView 开始旋转,ADBannerView 就会消失。AFAIK 这两种观点是完全独立的。

- (void) updateFloatingBar
{

    double angleToUpright = [self calculateAngleToUpright];
    double newAngle = angleToUpright - self.currentAngle;
    [self.FloatingBarImageView setTransform:CGAffineTransformMakeRotation(newAngle*(CGFloat)(M_PI/180))];

}

- (void) hideAd
{
    NSLog(@"Ad Hidden");
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1.0];
    [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.adBannerView cache:YES];
    self.adBannerView.frame = CGRectMake(0,self.view.bounds.size.height + 50,50,320);
    [UIView commitAnimations];
}

- (void) showAd
{
    NSLog(@"Ad Shown");
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1.0];
    [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.compassADBannerView cache:YES];
    self.compassADBannerView.frame = CGRectMake(0,self.view.bounds.size.height - 50,50,320);
    [UIView commitAnimations];
}

同样,第一种方法可以正常工作,它还具有将 showAd 放置的 adBannerView 推到屏幕外的次要效果:

4

0 回答 0