我正在使用一个没有宽度/高度的 AdMob 视图,直到它准备好显示然后展开。有没有办法在发生这种情况时得到通知?发生这种情况时,我需要调整布局大小。
问问题
823 次
4 回答
2
您可以覆盖onLayout
视图的方法:
View view = new View(this) {
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
// Do some stuff
}
};
于 2012-11-20T20:26:18.237 回答
1
尝试使用这个
AdView.setAdListener(new AdListener() {
public void onRecieveAd(){
//resize your view
}
});
如果您想知道您的 adview 何时收到广告,则可以使用onFailedToRecieveAd
侦听器。
AdView.setAdListener(new AdListener() {
public void onFailedToRecieveAd(){
//do something else
}
});
于 2012-11-20T20:25:24.883 回答
1
如果您使用将 adMob 置于有效位置的相对布局,则效果最佳。您实际上可以放置 adMob 图像,使其成为布局的一部分。当图像进入时,布局会被适当地打乱。
或者,您可以查看 adListeners
public interface AdListener {
public void onReceiveAd(Ad ad);
public void onFailedToReceiveAd(Ad ad, AdRequest.ErrorCode error);
public void onPresentScreen(Ad ad);
public void onDismissScreen(Ad ad);
public void onLeaveApplication(Ad ad);
}
本质上,您可以设置 addListener 并在收到广告时执行某些操作。但我建议使用包含在 XML 代码中的 adMob 的相对布局,这样布局会在图像出现/消失时自动调整。
于 2012-11-20T20:27:11.117 回答
0
你可以使用类似的东西
public void onCreate(Bundle savedInstanceState)
{
...
make admob...
...
AdSize adSize = AdSize.createAdSize(AdSize.SMART_BANNER, this);
int h = adSize.getHeightInPixels(getBaseContext());
myListView.setPadding(0, 0, 0, h);
}
于 2013-10-15T18:07:44.673 回答