Impossible de redimensionner le point de vue de l'advob lors du changement d'orientation
-
28-10-2019 - |
Question
Ce que j'ai essayé jusqu'à présent, c'est que dans ViewDidload, j'ai appelé
self.bannerView.autoresizingMask=UIViewAutoresizingFlexibleWidth;
et
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)newInterfaceOrientation duration:(NSTimeInterval)duration {
if (newInterfaceOrientation == UIInterfaceOrientationLandscapeLeft || newInterfaceOrientation == UIInterfaceOrientationLandscapeRight) {
self.bannerView.frame=CGRectMake(0.0,
0.0,
480.0,
GAD_SIZE_320x50.height);
}
// Position the UI elements for portrait mode
else {
self.bannerView.frame=CGRectMake(0.0,
0.0,
GAD_SIZE_320x50.width,
GAD_SIZE_320x50.height);
}
}
Les deux ne fonctionnaient pas pour moi.
La solution
Hmm, je ne pense pas que les créatifs d'Admob puissent s'étirer pour s'adapter à la taille de l'écran lorsqu'ils sont dans le paysage. Donc, malgré le fait que vous étirez le cadre de la vue à s'adapter, l'annonce elle-même, je pense, restera de la même taille.
Cela signifie que vous devriez toujours voir une annonce sur les modifications d'orientation, il semblera simplement que ce soit de la même taille (assurez-vous de faire une autre demande pour une annonce dans le WillanimaterotationToInterfaceOrientation: Méthode pour voir cela).
Autres conseils
Vous n'avez pas besoin de faire des mouvements, mais vous devez définir RootViewController RootView Correct pour AdmovView.
Si vous utilisez le modèle de contrôleur de vue, veuillez ajouter une ligne dans chaque contrôleur de vue personnalisée
adMobView.rootViewController = viewController;
où ViewController - Root View Controller de votre application.
Ne codez pas comme ça
adMobView.rootViewController = self;
En vue personnalisée!