내 앱에 admob 광고를 넣었습니다. ListView에서 바닥 글보기로 나타납니다. 이상하게도 광고는 첫 번째 클릭에 응답하지 않습니다. 응답하려면 두 번 클릭해야합니다. 그런 다음 모든 후속 클릭에 정상적으로 응답합니다.AdMob 광고를 사용하려면 ListView에서 두 번 클릭해야합니다.
보유하고있는보기에 할당 된 클릭 수신기가 없습니다. OnItemClickListener가 listview에 할당되어 있지 않습니다. 이것은 admob 뷰를 삽입하는 것과 같은 뷰입니다 (그리고이 팽창 된 뷰는 ListView footer로 추가됩니다).
<?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);
위의 중첩 된 레이아웃이 약간 이상하게 보일 수도 있지만 실현하려고하는 시각적 스타일 때문입니다.
어떤 원인 일 수 있습니까? 나는 평범한 linearlayout에서 앱의 다른 곳에서 그것을 사용하고 클릭 처리가 정상적으로 동작하기 때문에 admob view 생성 코드가 괜찮을 것이라고 생각합니다.
감사합니다.
의 루트 레이아웃에
android:descendantFocusability="blocksDescendants"
을 추가하여 해결했다. 첫 번째 클릭만으로 열린 아이콘이 커지면 광고가 "2 번 클릭"광고가 아닌 것이 확실합니까? 그렇지 않은 경우 AdMob 코드를 제공 할 수 있습니까? 선택적으로 [이 ListView 예제] (http://code.google.com/p/google-mobile-dev/source/browse/adcatalog/src/com/google/ad/catalog/layouts/ListViewexample)도 확인할 수 있습니다. .java? repo = ad-catalog-android). 두 번 클릭 문제가 없습니다. –
설명 된 @ user291701과 동일한 문제가 있습니다. 이상한 점은 광고에 작은 스크롤바가 표시된다는 것입니다. 첫 번째 클릭이 실제로는 광고의 크기를 조정하는 데 사용됩니다 (크기 조정은 표시되지 않음). 그러나 벤 웨이가 제공 한 답은 문제를 해결했습니다! –