0
请注意:目前不针对布局使用任何XML!我不想改变这一点。Admob视图已设置为已停止接收点击次数
我有一个Admob横幅在某个时间点在我的游戏中膨胀。我用this教程。它工作正常。
现在,当我删除横幅时,它会消失,因为它应该。但是,它不断收到点击,阻止底层视图捕捉点击。 :(
我使用此代码删除广告横幅:
public static void HideAd() {
AppelzActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
AlphaAnimation animation = new AlphaAnimation(1.0f, 0.0f);
animation.setDuration(400);
animation.setFillAfter(true);
animation.setInterpolator(new AccelerateInterpolator());
AppelzActivity.adView.startAnimation(animation);
AppelzActivity.adView.setClickable(false);
AppelzActivity.adView.setVisibility(View.GONE);
}});
}
我想象的setClickable(假)和setVisibility(View.GONE)就足够我也试过setClickable(真),因为我发现一个bugreport关于这个布尔工作相反方向..:S
所以,当我调用HideAd,广告肯定会消失(AlphaAnimation ==工作)。但是,当我点击区域广告曾经是,它仍然带我到广告所代表的URL。我希望点击可以被用户看到的视图处理(就像我在c舔在横幅曾经是地区以外的地方)..
谢谢!
发生这种情况可能是因为在代码中的上面一行代码中,动画不会一直持续到动画结束。但是当你试图隐藏视图时,它会以某种方式破坏动画。 –
啊..我明白了,埃里克..所以你说的是,如果当我确定动画已经结束时(例如onAnimationEnd(动画动画)),将视图设置为GONE,那就没有问题了。我会试试看。注释掉setFillAfter并不打扰我,虽然..我的印象是我需要它,因为否则动画结束的情况将不会保持。但是,因为我将它设置为“无效”,所以这并不重要。 –
我并不确定这种行为。这只是一个理论。但是我想象一下,因为你立刻将视图设置为“无效”,所以你实际上并没有获得动画。 –