我希望展示一个屏幕(非交互式),在展示插播广告之前显示几秒钟。目前,我的插页广告是使用
方法调用的。[self showStartupAd];
显示了这个;这当然会显示广告。
-(void)showStartupAd{
UIViewController *rootController = self.window.rootViewController;
[IronSource showInterstitialWithViewController:rootController placement:0];
}
然而,我想显示一个基本的计时器,说,显示5秒,一个活动视图或某种类型的指示器,首先启动,它允许用户看到一个简短的文本(如"赞助广告加载",然后有一个方法当计时器结束/视图解散,然后显示广告(我可以在广告回调中处理其余的)。
我当然可以得到这样一个进度视图;
UIViewController *rootController = self.window.rootViewController;
UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
indicator.frame = CGRectMake(0.0, 0.0, 140.0, 140.0);
indicator.center = rootController.view.center;
[rootController.view addSubview:indicator];
[indicator bringSubviewToFront:rootController.view];
[UIApplication sharedApplication].networkActivityIndicatorVisible = TRUE;
[indicator startAnimating];
但是这并没有显示任何我可以自定义/使用回调的屏幕。
假设初始视图控制器不是UINavigationController:
-
把你想要显示的内容放到初始视图控制器
-
在同一个视图控制器上,重写viewDidAppear并添加一个dispatchafter块,无论你想要什么延迟(参见https://www.codegrepper.com/code-examples/objectivec/dispatch+after+objective+c)
-
在调度块中,放置showStartupAd