- (void)viewDidLoad
{
adView = [[ADBannerView alloc] initWithFrame:CGRectZero];
adView.requiredContentSizeIdentifiers = [NSSet setWithObject:ADBannerContentSizeIdentifierPortrait];
adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;
CGRect adFrame = adView.frame;
adFrame.origin.y = self.view.frame.size.height-adView.frame.size.height;
adView.frame = adFrame;
[self.view addSubview:adView];
}
- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
if (!self.bannerIsVisible)
{
self.bannerIsVisible = YES;
}
}
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
if (self.bannerIsVisible)
{
self.bannerIsVisible = NO;
}
-1
A
回答
2
有四件事。首先,您应该将banner放置在viewDidLoad方法的屏幕外,因为它会在第一次启动时显示空帧,并且很可能因此而被拒绝。
其次,您正在设置您的横幅视图不正确。我认为该框架仍然是CGZero。第三,你没有设置bannerView的委托。请尝试以下操作:
-(void)viewDidLoad{
CGRect frame=CGRectZero;
frame.size = [ADBannerView sizeFromBannerContentSizeIdentifier:ADBannerContentSizeIdentifierPortrait];
// Place frame at the bottom edge of the screen out of sight
frame.origin = CGPointMake(0.0, CGRectGetMaxY(self.view.bounds));
// Now to create and configure the banner view
ADBannerView *adView = [[ADBannerView alloc] initWithFrame:frame];
adView.requiredContentSizeIdentifiers = [NSSet setWithObject:ADBannerContentSizeIdentifierPortrait];
// Set the delegate to self, so that we are notified of ad responses
adView.delegate = self;
[self.view addSubview: adView];
}
第四,在你的bannerViewDidLoadAd:方法你是不是动画横幅广告到位。试试这个:
- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
// Get a brand new frame
CGRect newFrame=CGRectZero;
CGPoint frameOrigin=CGPointZero;
// Set the origin
frameOrigin=CGPointMake(0.0, CGRectGetMaxY(self.view.bounds));
newFrame.origin=frameOrigin;
// Set the size
newFrame.size=[ADBannerView sizeFromBannerContentSizeIdentifier:ADBannerContentSizeIdentifierPortrait];
CGFloat bannerHeight = newFrame.size.height;
CGFloat bannerOffset=0.0;
// Determine where the new frame should be
if (!self.bannerIsVisible)
{
// It should be visible, raise it up
bannerOffset=-bannerHeight;
}
CGRect offSetRect=CGRectOffset(newFrame,0.0f,bannerOffset);
[UIView animateWithDuration:0.2
animations:^{banner.view.frame=offSetRect}
completion:^(BOOL finished){
if (bannerOffSet<0){
self.bannerIsVisible=YES;
}else{
self.bannerIsVisible=NO;
}
}
];
}
当然,如果旗帜,是应该被放置在屏幕的上方,你可以大概判断出事情需要如何进行修改,但是这让你在正确的方向前进。
祝你好运
0
不知道通过阅读您的问题,但请注意苹果模拟iAds不可用。有时候你需要在样本广告出现之前尝试多次。
相关问题
- 1. 为什么admob智能横幅不显示横向模式?
- 2. iAd横幅限制?
- 3. 选择iAd横幅
- 4. 我可以在iPad上显示“小”320x50 iAd横幅吗?
- 5. 如果横幅广告移动,iAd横幅不可点击
- 6. 2 iad横幅错误
- 7. iAd横幅背景图片
- 8. iAd和其他横幅
- 9. 广告横幅不显示
- 10. 横幅广告不显示
- 11. 为iAd横幅实现单例
- 12. 视网膜显示器上的iAd横幅有多大?
- 13. 尽管窗口是横向的,但纵向方向的iAd横幅显示
- 14. 我可以在iPad上为iAd使用320X50横幅尺寸吗?
- 15. Admob横幅未显示(Android0
- 16. 横幅显示计数
- 17. 为什么每次都不显示来自GetType()的列名称横幅
- 18. 将X按钮放到iAd横幅
- 19. 检测并忽略触摸iAd横幅
- 20. 如何暂停iAd横幅广告?
- 21. 安卓admob横幅将不会显示
- 22. RevMob横幅广告不会显示
- 23. admob横幅不显示在弹出
- 24. iAd横幅内容大小..(iAd支持iOs 4.2 for iPad)
- 25. 如何让我的iAd横幅出现在屏幕底部?
- 26. Xamarin C#iAd横幅视图底部示例
- 27. 为什么我的横幅尺寸仍然很大?
- 28. react-ntaive-admob显示测试广告横幅模拟器上的原创广告为什么不显示?
- 29. 我可以在视图中间放置iAd横幅吗?
- 30. 记住上次显示的横幅
它从不显示 – jini