0

MainActivity 正在扩展 UnityPlayerActivity。

我们正在使用以下代码片段在 android 上放置横幅广告。

        FrameLayout layout1 = new FrameLayout(this);
        BurstlyAnimatedBanner levelUpBanner  = new BurstlyAnimatedBanner( this, layout1, new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT), "0455184989016204562", "Level_Up_Screen", 30, false);
        LayoutParams lp1 = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
        addContentView(layout1,lp1);

这样做会在屏幕的左上角显示广告。我需要屏幕顶部中心的广告。我尝试使用 layout1.setForegroundGravity(Gravity.CENTER); 但这并没有帮助。我怎样才能达到我所需要的?另外,我需要以编程方式执行此操作,并且不能使用和 xml。

4

1 回答 1

0

我是 github.com/Burstly/BurstlyUnityPlugin 上的 Burstly Unity 插件的开发人员。

您可以通过将横幅广告添加到 RelativeLayout 而不是 FrameLayout 来居中,就像我们在插件中所做的那样:

mBaseLayout = new RelativeLayout(mActivity);
mBaseLayout.setLayoutParams(new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
mActivity.addContentView(mBaseLayout, new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));

RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
lp.topMargin = (int)originY;
lp.leftMargin = (int)originX;
burstlyView.setLayoutParams(lp);

mBaseLayout.addView(burstlyView);

有了这个,您就可以随意放置横幅。如果您希望将其定位在顶部中心,那么您需要更改lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT)lp.addRule(RelativeLayout.CENTER_HORIZONTAL).

于 2013-07-19T19:12:35.893 回答