我为我的应用程序设置了iAd,但无论出于何种原因,它们只出现在4英寸iphone而不是3.5英寸上。首先,我认为它与自动布局有关,所以我确保BannerView出现在两种屏幕尺寸中。在这样做之后,我跑了但仍然无法工作。
这是我用来告诉bannerView要做什么的代码。这是在ViewController.m文件中。
#pragma mark iAd Delegate Methods
-(void)bannerViewDidLoadAd:(ADBannerView *)banner {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
[banner setAlpha:1];
[UIView commitAnimations];
}
-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
[banner setAlpha:0];
[UIView commitAnimations];
}
此外,如果重要的话,这是在Spritekit中完成的。
感谢您的帮助,而且我对编码非常陌生,所以看起来很明显,我可能很容易没有注意到。
答案 0 :(得分:0)
您无法为对象的Alpha设置动画。或者,您应该通过它的不透明度来修改它的透明度:
- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
[UIView animateWithDuration:1.0 animations:^{
banner.layer.opacity = 1.0f;
}];
}
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
[UIView animateWithDuration:1.0 animations:^{
banner.layer.opacity = 0.0f;
}];
}