【问题标题】:Android Admob banner on all preferencescreens所有偏好屏幕上的 Android Admob 横幅
【发布时间】:2014-10-14 11:03:20
【问题描述】:

我在设置中放置 AdMob 横幅时遇到了问题。我已经设法通过使用以下布局将其放置在第一个屏幕中:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/MainLinearLayout"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent" android:baselineAligned="false">

   <fragment
       android:id="@+id/admob"
       android:name="ro.infiniteloop.phonehancer.AdmobFragment"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content" />

    <fragment
        android:id="@+id/settings"
        android:name="ro.infiniteloop.phonehancer.SettingsFragment"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent" />

</LinearLayout>

AdmobFragment 布局是:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:id="@+id/AdmobLinearLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    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="ro.infiniteloop.phonehancer.AdmobFragment" >

    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        ads:adSize="BANNER"
        ads:adUnitId="ca-app-pub-5599997006266549/8381977716" />

</LinearLayout>

以及设置片段布局:

<PreferenceCategory
    android:key="pref_key_storage_settings"
    android:title="@string/pref_sms_storage_title" >

    <CheckBoxPreference
        android:defaultValue="false"
        android:key="pref_key_auto_delete"
        android:summary="@string/pref_summary_auto_delete"
        android:title="@string/pref_title_auto_delete" />

.....

An image of the output

到目前为止一切顺利。但是当我进入儿童偏好屏幕时,原始布局被重置并且不再显示广告

An image of the child preference screen

有没有办法将这些元素放置在布局中或编写一些自定义代码以将广告保留在所有偏好子屏幕上?

【问题讨论】:

    标签: android layout admob settings preferencescreen


    【解决方案1】:

    创建一个只包含 admob 的布局

    admob.xml

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    
    android:id="@+id/AdmobLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    
    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        ads:adSize="BANNER"
        ads:adUnitId="ca-app-pub-5599997006266549/8381977716" />
    

    现在在设置片段中添加这个视图。

      getActivity().setcontentView(R.layout.admob);
    

    您的广告将可见

    【讨论】:

    • 我从一开始就在一个单独的布局中编写了 admob 片段。我的问题更多是如何让广告显示在辅助(子)偏好屏幕上
    • 有人已经找到解决方案了吗?真的需要一个答案。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多