在 Cocos2d-x 视图上显示横幅



在按照 HeyZap 网站上的说明进行操作时,我注意到横幅被添加到 FrameLayout 中,如下所示:

FrameLayout bannerWrapper = (FrameLayout) findViewById(R.id.banner_wrapper);

我使用 Android Studio 在布局文件夹中创建了一个activity_main.xml文件,并创建了一个简单的 FrameLayout,如下所示:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/banner_wrapper"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
</FrameLayout>

为了访问新创建的"banner_wrapper"FrameLayout,我必须在OnCreate()方法中调用setContentView(R.layout.activity_main)。这确实显示了横幅,但也可能导致 Cocos2dx 视图不显示。有没有办法将我的"banner_wrapper"覆盖在原始的 Cocos2dx 视图上?或者有更好的方法可以做到这一点吗?

我设法通过完全跳过activity_main.xml文件并在代码中创建所有必要的视图来解决此问题:

LinearLayout layout = new LinearLayout(activity);
int gravity= Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL;
layout.setGravity(gravity);
activity.addContentView(layout, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
BannerAdView banner = new BannerAdView(activity);
layout.addView(banner);
layout.bringToFront();
banner.load();

相关内容

  • 没有找到相关文章

最新更新