我目前在我的ViewPager TabPager下面有一个AdMob横幅,如图所示,我希望横幅位于ViewPager上方。我以编程方式添加横幅,并将ViewPager设置为RelativeLayout中的唯一元素。
activity_main.xml中
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@+id/layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1">
</android.support.v4.view.ViewPager>
</RelativeLayout>
将admob横幅添加到activity_main.xml
中的RelativeLayoutadView = new AdView(this, AdSize.SMART_BANNER, "ADMOB_ID");
RelativeLayout layout = (RelativeLayout) findViewById(R.id.layout);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.ALIGN_PARENT_TOP, R.id.layout);
layout.addView(adView, params);
答案 0 :(得分:1)
默认的Tab布局附加到操作栏。如果您想在标签上方展示广告,最好在xml版面中使用TabHost。
例:
编辑:查看我在评论中链接的视频
你的xml看起来应该是这样的
`
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/tab1Name"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
/ *
TAB 1 CONTENT HERE
* /
<LinearLayout
android:id="@+id/tab2Name"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
/ *
TAB 2 CONTENT HERE
* /
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>`
答案 1 :(得分:1)
正如我可以看到你根据文档中提供的描述使用ACTIONBAR TAB,标签是Actionbar的直接子项所以如果你使用Actionbar标签就不可能。
你可以使用TABHOST和tablayout做你想做的事。