我正在製作一個簡單的遊戲,並且我想在遊戲結束屏幕的頂部添加一個iAd
。我可以將它添加到UIViewController
,但是它會在播放時顯示,這是我不想要的。如何在某個SKScene上顯示iAd並將其隱藏在另一個上
有沒有辦法讓iAd
只出現在某個SKScene
?感謝你的幫助!
我正在製作一個簡單的遊戲,並且我想在遊戲結束屏幕的頂部添加一個iAd
。我可以將它添加到UIViewController
,但是它會在播放時顯示,這是我不想要的。如何在某個SKScene上顯示iAd並將其隱藏在另一個上
有沒有辦法讓iAd
只出現在某個SKScene
?感謝你的幫助!
最乾淨的解決方案是聲明和實施協議,讓UIViewController
知道它應該隱藏廣告。
@protocol MySceneDelegate <NSObject>
- (void)hideAd;
- (void)showAd;
@end
@interface MyScene : SKScene
@property (weak) id <MySceneDelegate> delegate;
@end
視圖控制器,顯示現場應該實現一個hideAd
方法,並設置本身作爲場景的代表。例如:
- (void)viewDidLoad
{
[super viewDidLoad];
// Configure the view, etc.
...
// Set the delegate
[scene setDelegate:self];
// Present the scene.
[skView presentScene:scene];
}
然後在您不想顯示廣告的場景,你可以調用其設定爲一個委託視圖控制器的hideAd
方法:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
/* Called when a touch begins */
if ([_delegate respondsToSelector:@selector(hideAd)])
{
[_delegate performSelector:@selector(hideAd)];
}
}
你可以告訴視圖控制器以相同的方式顯示廣告。 希望它有幫助。
讓場景向顯示/隱藏iAd橫幅的視圖控制器發送消息 – LearnCocos2D
我該怎麼做? –