我正在开发(学习构建 :) 一款带有andengine GLES2
. 我正在使用Base game activity,并覆盖setContent
视图以放置我的 admob 广告。
一切正常,除了分辨率策略。
比率分辨率政策是我正在使用的政策CAMERA_WIDTH = 800; and CAMERA_HEIGHT = 480;
问题是,无论何时被覆盖,onsetContentView
场景都不会与中心对齐,并且边距仅显示在底部而不是两者:顶部和底部。水平对齐时也会发生同样的情况:边距将仅显示在右侧,而不是两侧。我该如何纠正这个?我在下面给出我的代码:
@Override
protected void onSetContentView() {
System.out.println("Content setting");
this.mRenderSurfaceView = new RenderSurfaceView(this);
final LayoutParams layoutParams = new LayoutParams(
android.view.ViewGroup.LayoutParams.MATCH_PARENT,
android.view.ViewGroup.LayoutParams.MATCH_PARENT);
layoutParams.gravity = Gravity.LEFT ;
final android.widget.FrameLayout.LayoutParams surfaceViewLayoutParams = new FrameLayout.LayoutParams(
layoutParams);
adView = new AdView(this, AdSize.BANNER, "xxxxxxxxxxxxx");
final FrameLayout.LayoutParams adViewLayoutParams = new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.WRAP_CONTENT,
FrameLayout.LayoutParams.WRAP_CONTENT, Gravity.LEFT
);
final FrameLayout frameLayout = new FrameLayout(this);
final FrameLayout.LayoutParams frameLayoutLayoutParams = new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.FILL_PARENT,
FrameLayout.LayoutParams.FILL_PARENT,Gravity.CENTER);
frameLayout.addView(this.mRenderSurfaceView, surfaceViewLayoutParams);
frameLayout.addView(adView, adViewLayoutParams);
this.setContentView(frameLayout, frameLayoutLayoutParams);
this.mRenderSurfaceView.setRenderer(this.mEngine, this);
}
这是我得到的图像,如果您选择图像,您可以看到场景下方的白边(由于堆栈溢出,它没有引起注意也有白色背景)
任何建议都会对我很有帮助
我该如何解决这个问题请帮助我
谢谢大家,