[iOS} iAd Landscape Issue

Hi, I a developing a game that is in landscape mode and I am running into a problem when trying to show ad using apple’s iAd framework. The iAd banner itself is fine and displays properly on the top of the screen on all devices I’m targeting (iphone and ipad). The problem comes when I click on the banner to get the full ad on iphone. What it does it flips the app into portrait mode and shows the expanded version of the add but only a cropped version of it. This issue only seems to happen on the iphone.
Further more when I click the x button to dissmiss the full screen ad I loose all touch action on my app (except to the banner).

Here are some screen shots to show what is happening:

Here is what my code looks like. My class that handles the ads is in objective c and I call showBannerAd to add the banner to the view.

Header:

#import 
#import 
#import "../cocos2dx/platform/ios/EAGLView.h"

@interface AdManager : UIViewController  {
    ADBannerView *_bannerView;
}

+ (AdManager*) sharedManager;
+ (void) end;

- (void) showBannerAd;

Source:

#import "AdManager_objc.h"


@implementation AdManager

- (id) init {
    if ((self = [super init])) {

        if ([ADBannerView instancesRespondToSelector:@selector(initWithAdType:)]) {
            _bannerView = [[ADBannerView alloc] initWithAdType:ADAdTypeBanner];
        } else {
            _bannerView = [[ADBannerView alloc] init];
        }
        _bannerView.delegate = self;
    }
    return self;
}

- (void) dealloc {
    [super dealloc];
}

- (void) showBannerAd {
    [[EAGLView sharedEGLView] addSubview:self.view];
}

- (void)layoutAnimated:(BOOL)animated {

    // As of iOS 6.0, the banner will automatically resize itself based on its width.
    // To support iOS 5.0 however, we continue to set the currentContentSizeIdentifier appropriately.
    CGRect contentFrame = self.view.bounds;
    if (contentFrame.size.width < contentFrame.size.height) {
        _bannerView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;
    } else {
        _bannerView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierLandscape;
    }
}

- (void)viewDidLoad {
    [super viewDidLoad];
    [self.view addSubview:_bannerView];
}

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    [self layoutAnimated:NO];}

- (void)viewDidDisappear:(BOOL)animated {
    [super viewDidDisappear:animated];
}

#if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_6_0
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return YES;
}
#endif

- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskAll;
}

- (void)viewDidLayoutSubviews {
    [self layoutAnimated:[UIView areAnimationsEnabled]];
}

- (void)bannerViewDidLoadAd:(ADBannerView *)banner {
    [self layoutAnimated:YES];
}

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {
    [self layoutAnimated:YES];
}

- (BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner willLeaveApplication:(BOOL)willLeave {
    return YES;
}

- (void)bannerViewActionDidFinish:(ADBannerView *)banner {

}

Any help would be greatly appreciated! Thanks.

Hey, did you ever figure this out?

This works:-

http://www.cocos2d-x.org/boards/6/topics/31613

Do you use addsubview to change view?
Remove it and use presentViewcontroller…
Hope this help.