如何将admob(或任何其他图层)放在webview中的swf flash文件上?

时间:2012-03-03 17:41:38

标签: android flash webview

我有一个应用程序在webview中加载flash视频播放器,我想使用admob向应用添加一些广告,但无论我尝试的xml布局的组合如何,广告总是在视频后面。

有没有人知道如何将广告放在swf文件上方?

我的main.xml文件目前看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<RelativeLayout
    android:id="@+id/webview_container"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:orientation="vertical">
    <WebView android:id="@+id/web_engine"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        />
</RelativeLayout>
<RelativeLayout
    android:id="@+id/ad_layout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="bottom"
    android:layout_alignParentBottom="true"
    android:layout_alignBottom="@+id/home_layout"
    >
    <com.google.ads.AdView android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adUnitId="a14f4c18e44fce4"
        ads:adSize="BANNER"
        ads:loadAdOnCreate="true"
        />
</RelativeLayout>
</FrameLayout>

1 个答案:

答案 0 :(得分:2)

WebView中的Flash始终显示在其他视图之上,您可以将WebView类子类化以覆盖默认行为。

public class WebView2 extends WebView
{

    // constructors ...

    @Override
    public void addView(View child, int index)
    {
        if (child instanceof SurfaceView)
             ((SurfaceView)child).setZOrderOnTop(false);

        super.addView(child, index);
    }

}