我在我的应用中添加了admob广告。它们在ListView中显示为页脚视图。奇怪的是,广告没有响应第一次点击。我需要再次点击它才能响应。此后,它会对所有后续点击做出正常响应。
我没有为包含它的视图分配点击侦听器。我也没有为列表视图分配OnItemClickListener。这就是我将admob视图注入的视图(并且这个膨胀的视图被添加为ListView页脚)。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="5dp" >
<!-- I add the Ad to this inner layout at runtime. -->
<LinearLayout
android:id="@+id/body"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#fff"
android:padding="5dp">
</LinearLayout>
</LinearLayout>
...
View parent = inflateContainerFromXml(R.layout.foo);
parent.addView(makeAdMobView());
ListView lv = ...;
lv.addFooterView(parent);
我意识到上面的嵌套布局看起来有些奇怪,但这是因为我想要实现的视觉风格。
知道可能导致这种情况的原因是什么?我认为admob视图创建代码应该没问题,因为我在应用程序的其他地方以简单的线性布局使用它,并且点击处理通常在那里表现。
由于
答案 0 :(得分:5)
我有同样的问题;通过添加解决
android:descendantFocusability="blocksDescendants"