片段(AdMob)缩放(增加高度)时,Android WebView缩放(降低高度)

时间:2015-04-13 16:34:04

标签: android-layout android-fragments admob

以下是布局文件。内部相对布局(id = webViewLayout)将包含 WebView ,它将在运行时添加到布局中,并且片段的(id = adFragement) 应用启动时高度为0,因为未加载任何广告。此时, id = webViewLayout 中的 WebView 会占用屏幕上的所有空间,稍后会提取广告并且 id = adFragment 显示广告的高度为50.广告投放在 WebView 之上。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <RelativeLayout
        android:id="@+id/webViewLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_above="@+id/adFragment" />

    <fragment
        android:id="@+id/adFragment"
        android:name="com.gatta.e.gatta.MainActivity$AdFragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:layout="@layout/fragment_ad"
        android:layout_alignParentBottom="true" />

</RelativeLayout>

片段高度增加时,如何使 WebView 动态缩小缩放比例。 ?

1 个答案:

答案 0 :(得分:0)

您应该使用LinearLayout,这样您就可以访问android:layout_weight属性。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_orientation="vertical" >

<LinearLayout
    android:id="@+id/webViewLayout"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" />

<fragment
    android:id="@+id/adFragment"
    android:name="com.gatta.e.gatta.MainActivity$AdFragment"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    tools:layout="@layout/fragment_ad" />