Android 将Admob广告放置在具有填充高度布局的WebView底部
这是我的布局:Android 将Admob广告放置在具有填充高度布局的WebView底部,android,android-layout,admob,Android,Android Layout,Admob,这是我的布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout 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="f
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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" >
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="myID"
ads:loadAdOnCreate="true" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageButton
android:id="@+id/search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:contentDescription="@string/search_contentDescription"
android:src="@android:drawable/ic_menu_search" />
<AutoCompleteTextView
android:id="@+id/edit"
android:imeOptions="actionSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/search"
android:focusable="true"
android:hint="@string/edit_hint"
android:singleLine="true" />
<WebView
android:id="@+id/result"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/edit" />
</RelativeLayout>
</LinearLayout>
我的admob广告目前位于顶部。如何将其移动到WebView的底部?将WebView的
android:layout\u height
更改为wrap\u content
不是我想要的。网络视图的高度应垂直填充到最大值。将相对布局更改为线性布局
,然后使用
android:layout_height="0dp"
android:layout_weight="1"
在线性布局
和网络视图
中,为什么不将adView放在相对布局之后:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageButton
android:id="@+id/search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:contentDescription="@string/search_contentDescription"
android:src="@android:drawable/ic_menu_search" />
<AutoCompleteTextView
android:id="@+id/edit"
android:imeOptions="actionSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/search"
android:focusable="true"
android:hint="@string/edit_hint"
android:singleLine="true" />
<WebView
android:id="@+id/result"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/edit" />
</RelativeLayout>
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="myID"
ads:loadAdOnCreate="true" />
</LinearLayout>
如果它不起作用,您可以通过RelativeLayout更改线性布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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" >
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="myID"
ads:loadAdOnCreate="true"
android:layout_alignParentBottom="true"/>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@id/adView" >
<ImageButton
android:id="@+id/search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:contentDescription="@string/search_contentDescription"
android:src="@android:drawable/ic_menu_search" />
<AutoCompleteTextView
android:id="@+id/edit"
android:imeOptions="actionSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/search"
android:focusable="true"
android:hint="@string/edit_hint"
android:singleLine="true" />
<WebView
android:id="@+id/result"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/edit" />
</RelativeLayout>
</RelativeLayout>
执行以下操作
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageButton
android:id="@+id/search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@android:drawable/ic_menu_search" />
<AutoCompleteTextView
android:id="@+id/edit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/search"
android:focusable="true"
android:hint=" string/edit_hint"
android:imeOptions="actionSearch"
android:singleLine="true" />
<WebView
android:id="@+id/result"
android:layout_width="fill_parent"
android:layout_height="350dp"
android:layout_below="@id/edit" />
</RelativeLayout>
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="myID"
ads:loadAdOnCreate="true" />
</LinearLayout>
我试过这个,但不起作用。我得到了java.lang.ClassCastException:android.webkit.WebView无法转换为android.widget.AutoCompleteTextView错误。是的,我在示例中忘记了一个引号,现在已编辑:)第二个方法对我有效。非常感谢你!谢谢,但设置明确的高度可能不是一个好主意,因为Android手机的屏幕大小差异很大。