工具栏和 admob 横幅覆盖应用内容
Toolbar and admob banner are covering the app content
我有一个正在开发的 bpm 应用程序,但我可以让布局正常工作我已经尝试过线性和相对布局,但我似乎无法让它工作。
M 顶部工具栏没有填满屏幕的整个宽度,它周围似乎有某种填充,它还覆盖了应用程序中的内容,而不是工具栏之后开始的内容。
底部的admob横幅广告似乎也有同样的问题。我很长一段时间都无法让它显示,但我终于让它显示了,只是现在它覆盖了屏幕上的应用程序内容?
有什么方法可以使工具栏一直到顶部,周围没有填充,并占据屏幕的整个宽度...并且不覆盖内容..内容将在工具栏...
是否有办法让底部的横幅广告也不会覆盖应用内容???

这是我的布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/appView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<!-- TOOLBAR START -->
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:textColor="@color/ColorRemoveAds"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<!-- TOOLBAR END -->
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/appView2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<TextView
android:id="@+id/bpmLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/bpm"
android:textColor="@color/textColor"
android:textSize="40sp" />
<TextView
android:id="@+id/bpmTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bpmLabelTextView"
android:layout_centerHorizontal="true"
android:text="@string/initial_bpm_value"
android:textColor="@color/textColor"
android:textSize="70sp" />
<Button
android:id="@+id/tapButtonView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_above="@+id/instructionalLabelTextView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:background="@drawable/round_button"
android:text="@string/tap"
android:textColor="@color/textColor"
android:textSize="90sp" />
<TextView
android:id="@+id/instructionalLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="@string/reset_instructions"
android:textColor="@color/textColor" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/adView2">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id">
</com.google.android.gms.ads.AdView>
</RelativeLayout>
这让我很困惑,我已经阅读了几个小时,如有任何帮助,我们将不胜感激
更新*:
我已经设法让工具栏部分使用线性布局工作!
但是 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/res-auto"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- TOOLBAR START -->
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:textColor="@color/ColorRemoveAds"
app:itemIconTint="@color/ColorRemoveAds"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<!-- TOOLBAR END -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/appView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<TextView
android:id="@+id/bpmLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/bpm"
android:textColor="@color/textColor"
android:textSize="40sp" />
<TextView
android:id="@+id/bpmTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bpmLabelTextView"
android:layout_centerHorizontal="true"
android:text="@string/initial_bpm_value"
android:textColor="@color/textColor"
android:textSize="70sp" />
<Button
android:id="@+id/tapButtonView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_above="@+id/instructionalLabelTextView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:background="@drawable/round_button"
android:text="@string/tap"
android:textColor="@color/textColor"
android:textSize="90sp" />
<TextView
android:id="@+id/instructionalLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="@string/reset_instructions"
android:textColor="@color/textColor" />
</RelativeLayout>
<!-- PAGE BOTTOM ADMOB BANNER VIEW START -->
<LinearLayout
android:id="@+id/banneradview"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@layout/bannerborderline"
android:layout_below="@id/appView">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:screenOrientation="portrait"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id"/>
</LinearLayout>
<!-- PAGE BOTTOM ADMOB BANNER VIEW END -->
这是应用程序现在的样子

你的布局应该是这样的:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:textColor="@color/ColorRemoveAds"
app:itemIconTint="@color/ColorRemoveAds"
app:popupTheme="@style/AppTheme.PopupOverlay"/>
</android.support.design.widget.AppBarLayout>
<RelativeLayout
android:id="@+id/appView"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<TextView
android:id="@+id/bpmLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/bpm"
android:textColor="@color/textColor"
android:textSize="40sp"/>
<TextView
android:id="@+id/bpmTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bpmLabelTextView"
android:layout_centerHorizontal="true"
android:text="@string/initial_bpm_value"
android:textColor="@color/textColor"
android:textSize="70sp"/>
<Button
android:id="@+id/tapButtonView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_above="@+id/instructionalLabelTextView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:background="@drawable/round_button"
android:text="@string/tap"
android:textColor="@color/textColor"
android:textSize="90sp"/>
<TextView
android:id="@+id/instructionalLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="@string/reset_instructions"
android:textColor="@color/textColor"/>
</RelativeLayout>
<LinearLayout
android:id="@+id/banneradview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@layout/bannerborderline"
android:orientation="horizontal">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:screenOrientation="portrait"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id"/>
</LinearLayout>
</LinearLayout>
RelativeLayout
的主要变化。应该是:
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
为了填充所有 free
space,但根本不填充 all
space。
我有一个正在开发的 bpm 应用程序,但我可以让布局正常工作我已经尝试过线性和相对布局,但我似乎无法让它工作。
M 顶部工具栏没有填满屏幕的整个宽度,它周围似乎有某种填充,它还覆盖了应用程序中的内容,而不是工具栏之后开始的内容。
底部的admob横幅广告似乎也有同样的问题。我很长一段时间都无法让它显示,但我终于让它显示了,只是现在它覆盖了屏幕上的应用程序内容?
有什么方法可以使工具栏一直到顶部,周围没有填充,并占据屏幕的整个宽度...并且不覆盖内容..内容将在工具栏...
是否有办法让底部的横幅广告也不会覆盖应用内容???
这是我的布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/appView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<!-- TOOLBAR START -->
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:textColor="@color/ColorRemoveAds"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<!-- TOOLBAR END -->
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/appView2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<TextView
android:id="@+id/bpmLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/bpm"
android:textColor="@color/textColor"
android:textSize="40sp" />
<TextView
android:id="@+id/bpmTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bpmLabelTextView"
android:layout_centerHorizontal="true"
android:text="@string/initial_bpm_value"
android:textColor="@color/textColor"
android:textSize="70sp" />
<Button
android:id="@+id/tapButtonView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_above="@+id/instructionalLabelTextView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:background="@drawable/round_button"
android:text="@string/tap"
android:textColor="@color/textColor"
android:textSize="90sp" />
<TextView
android:id="@+id/instructionalLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="@string/reset_instructions"
android:textColor="@color/textColor" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/adView2">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id">
</com.google.android.gms.ads.AdView>
</RelativeLayout>
这让我很困惑,我已经阅读了几个小时,如有任何帮助,我们将不胜感激
更新*: 我已经设法让工具栏部分使用线性布局工作! 但是 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/res-auto"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- TOOLBAR START -->
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:textColor="@color/ColorRemoveAds"
app:itemIconTint="@color/ColorRemoveAds"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<!-- TOOLBAR END -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/appView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<TextView
android:id="@+id/bpmLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/bpm"
android:textColor="@color/textColor"
android:textSize="40sp" />
<TextView
android:id="@+id/bpmTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bpmLabelTextView"
android:layout_centerHorizontal="true"
android:text="@string/initial_bpm_value"
android:textColor="@color/textColor"
android:textSize="70sp" />
<Button
android:id="@+id/tapButtonView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_above="@+id/instructionalLabelTextView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:background="@drawable/round_button"
android:text="@string/tap"
android:textColor="@color/textColor"
android:textSize="90sp" />
<TextView
android:id="@+id/instructionalLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="@string/reset_instructions"
android:textColor="@color/textColor" />
</RelativeLayout>
<!-- PAGE BOTTOM ADMOB BANNER VIEW START -->
<LinearLayout
android:id="@+id/banneradview"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@layout/bannerborderline"
android:layout_below="@id/appView">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:screenOrientation="portrait"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id"/>
</LinearLayout>
<!-- PAGE BOTTOM ADMOB BANNER VIEW END -->
这是应用程序现在的样子
你的布局应该是这样的:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:textColor="@color/ColorRemoveAds"
app:itemIconTint="@color/ColorRemoveAds"
app:popupTheme="@style/AppTheme.PopupOverlay"/>
</android.support.design.widget.AppBarLayout>
<RelativeLayout
android:id="@+id/appView"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@drawable/transitioning_background"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".TempoActivity">
<TextView
android:id="@+id/bpmLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/bpm"
android:textColor="@color/textColor"
android:textSize="40sp"/>
<TextView
android:id="@+id/bpmTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bpmLabelTextView"
android:layout_centerHorizontal="true"
android:text="@string/initial_bpm_value"
android:textColor="@color/textColor"
android:textSize="70sp"/>
<Button
android:id="@+id/tapButtonView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_above="@+id/instructionalLabelTextView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:background="@drawable/round_button"
android:text="@string/tap"
android:textColor="@color/textColor"
android:textSize="90sp"/>
<TextView
android:id="@+id/instructionalLabelTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="@string/reset_instructions"
android:textColor="@color/textColor"/>
</RelativeLayout>
<LinearLayout
android:id="@+id/banneradview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@layout/bannerborderline"
android:orientation="horizontal">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:screenOrientation="portrait"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id"/>
</LinearLayout>
</LinearLayout>
RelativeLayout
的主要变化。应该是:
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
为了填充所有 free
space,但根本不填充 all
space。