我有下一个布局的简单标签活动:
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#ffffff00" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#ffffff00" />
我使用按钮作为标签的指示符
tabHost.addTab(tabHost.newTabSpec("Tab1")
.setIndicator(new Button(this))
.setContent(new Intent(this, TabActivity1.class)));
tabHost.addTab(tabHost.newTabSpec("Tab2")
.setIndicator(new Button(this))
.setContent(new Intent(this, TabActivity2.class)));
在这种情况下,FrameLayout总是在顶部显示黑线和阴影效果(你可以在按钮下看到它):
问题是:如何摆脱这条线?在Android源中绘制它的方法在哪里?
答案 0 :(得分:17)
将自定义主题应用于您的活动,并将android:windowContentOverlay属性归零。
在themes.xml中定义主题:
<style name="YourTheme" parent="if you want">
...
<item name="android:windowContentOverlay">@null</item>
...
</style>
在您的应用程序或AndroidManifest.xml中的活动中应用主题:
<application android:theme="@style/YourTheme"
... >
希望它有所帮助。这让我很头疼......
答案 1 :(得分:8)
在你的布局xml中:
<TabWidget ...
android:tabStripEnabled="false" >
...
</TabWidget>
答案 2 :(得分:0)
似乎这样做的方法是将tabwidget嵌套在LinerLayout中...... 看here.
答案 3 :(得分:0)
不幸的是你无法摆脱它。这是TabWidget
实施方式的结果。在内部,TabWidget
是ActivityGroup
,每个标签的内容都是自己的Activity
。
答案 4 :(得分:0)
我建议您使用GrreenDroid提供的库:http://android.cyrilmottier.com/?p=274
只要看看GDTabActivity,你就可以调整一切并摆脱这个吧。
http://android.cyrilmottier.com/medias/actionbar/action_bar_4.png