我想使用新引入的Google AdMob Adaptive Banners在我的应用程序中。本快速入门演示了通过 DisplayMetrics 动态计算 AdSize 的函数。
private AdSize getAdSize() {
// Step 2 - Determine the screen width (less decorations) to use for the ad width.
Display display = getWindowManager().getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
display.getMetrics(outMetrics);
float widthPixels = outMetrics.widthPixels;
float density = outMetrics.density;
int adWidth = (int) (widthPixels / density);
// Step 3 - Get adaptive ad size and return for setting on the ad view.
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth);
}
但是这个函数使用了Activity的getWindowManager()来进行计算。但我只是将上下文传递给我的类(class)。无论如何要获取带有上下文的 DisplayMetrics 吗?
最佳答案
轻松完成。
这一点
Display display = getWindowManager().getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
display.getMetrics(outMetrics);
可以替换为:
DisplayMetrics metrics = Resources.getSystem().getDisplayMetrics();
关于android - AdMob 自适应横幅。从上下文中获取 DisplayMetrics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58972162/