Мультитач не работает на iOS с robovm и libGDX при показе баннерной рекламы
У меня проблема с вводом в libGDX в бэкэнде iOS. Это происходит, когда у меня отображается баннерная реклама Mopub. Когда я кладу свой первый палец на экран, я получаю событие touchDown (указатель = 0), а когда дело доходит до моего второго пальца, ничего не срабатывает. НО по некоторым причинам это работает, когда я помещаю свой второй палец около области баннера (я думаю, что это рамка баннера, которую я бью). Когда баннерная реклама не отображается, все работает нормально. Также все отлично работает на Android.
Я очень признателен за помощь в решении этой проблемы здесь.
Заранее спасибо.
- iOS 8.3;
- roboVM 1.2.0;
- gdx 1.6.0;
Вот как я загружаю баннер:
UIApplication application;
String id;
BANNER_SIZE = MPConstants.MOPUB_BANNER_SIZE;
id = BANNER_ID;
rootViewController = application.getKeyWindow().getRootViewController();
banner = new MPAdView(id, BANNER_SIZE);
double bannerWidth = UIScreen.getMainScreen().getBounds().getWidth();
double bannerHeight = bannerWidth / BANNER_SIZE.getWidth() * BANNER_SIZE.getHeight();
banner.setFrame(new CGRect((UIScreen.getMainScreen().getBounds().getWidth() / 2d) - (BANNER_SIZE.getWidth() * .5d), 0, bannerWidth, bannerHeight));
adViewController = new MPAdViewController(banner);
MPAdViewDelegate bannerDelegate = new MPAdViewDelegateAdapter(){
@Override
public UIViewController getViewController() {
return adViewController;
}
};
banner.setDelegate(bannerDelegate);
adViewController.getView().addSubview(banner);
rootViewController.getView().addSubview(adViewController.getView());
if(!isBannerLoaded) {
banner.loadAd();
isBannerLoaded = true;
}
Вот мой метод didFinishLaunching:
@Override
public boolean didFinishLaunching(UIApplication application, UIApplicationLaunchOptions launchOptions) {
super.didFinishLaunching(application, launchOptions);
//The 0 doesn't do anything. It was something I was trying out.
adController.loadBanner(application, 0);
rootViewController = application.getKeyWindow().getRootViewController();
application.getKeyWindow().setRootViewController(rootViewController);
application.getKeyWindow().addSubview(rootViewController.getView());
application.getKeyWindow().makeKeyAndVisible();
return false;
}
1 ответ
Вы должны добавить эту строку в свой adViewController
adViewController.getView().setMultipleTouchEnabled(true);