微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Unity for Android中确定Admob SmartBanner的实际高度

所以我在我的Unity 4.6 Android游戏中实现了admob横幅.我在底部有横幅,需要在我的UI中考虑它.具体来说,我需要确切知道它有多高,但我很难搞清楚这一点.

根据找到的信息here,智能横幅应为32,50或90像素高,具体取决于设备高度.但这似乎并非典型.

一些搜索似乎表明这是因为密度像素.所以我尝试使用px = dp *(Screen.dpi / 160)转换指定的像素高度.因此,例如,如果我确定横幅高度应为90像素,我会使用bannerHeight = 90 *(Screen.dpi / 160).这似乎适用于某些设备但不适用于其他设备.

例如我的Nexus 4具有320 DPI的使用上面似乎表明旗帜应该是180个像素高,但旗帜似乎实际上是约90像素高.但对的Nexus 7(其具有166 dpi的),横幅似乎是大约120像素高时该公式将指示它应该是〜93.

所以我想我不知道如何找出旗帜实际上正在多高是,我还没有找到一种方式来获得从API此信息.我调用横幅的代码非常有用:

 string adUnitId = "my_id";

 BannerView bannerView = new BannerView(adUnitId, AdSize.SmartBanner, AdPosition.Bottom);
 AdRequest request = new AdRequest.Builder().Build();
 bannerView.LoadAd(request);

解决方法:

有答案:
https://stackoverflow.com/a/14204959/1900546

int heightPixels = AdSize.SMART_BANNER.getHeightInPixels(this);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐