I hide admob adview by view.gone:
//adView.setClickable(false);
//adView.clearFocus();
//adView.setEnabled(false);
//adView.setFilterTouchesWhenObscured(true);
//adView.setFocusable(false);
//adView.setFocusableInTouchMode(false);
adView.setVisibility(View.GONE);
adView.startAnimation( animation );这会隐藏广告,但广告视图本身仍然是可触摸的,所以如果我触摸广告视图的空间,它仍然会打开浏览器并将我重定向到广告,尽管广告本身是不可见的。
如何禁用触摸事件?我已经尝试了上面所有的代码行,但都不起作用。
有什么建议吗?
发布于 2012-04-23 06:09:36
尝试使用setOnTouchListener并覆盖您想要的onTouch。您还可以使用removeView():
LinearLayout linLay = (LinearLayout)findViewById(R.id.ad_layout);
linLay.removeView(adView);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT);
linLay.addView(adView, params);并在需要时将其添加回来。
发布于 2012-08-21 18:18:42
在大多数情况下,设置adView.setVisibility(View.GONE)并从视图层次结构中删除AdMob视图将隐藏广告并阻止用户交互。
当显示广告的活动结束(销毁)时,不要忘记结束AdView生命周期。在AdMob SDK Javadoc中:
销毁公共无效()
销毁AdView。调用此方法后,不应再使用AdView。
在活动的onDestroy()回调中调用destroy():
@Override
public void onDestroy() {
if (adView != null) {
adView.destroy();
}
super.onDestroy();
}发布于 2013-10-01 04:46:06
final com.google.ads.AdView ad = (AdView) findViewById(R.id.rect_ad);
if ( ad != null) {
ad.stopLoading();
ad.destroy();
getWindowManager().removeView(ad);
}即使这段代码也不会破坏AdMob =(我在内存中有它的处理程序和WebView来保存我的活动
https://stackoverflow.com/questions/10272493
复制相似问题