12

我有下一个布局的简单选项卡活动:

    <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 源代码中绘制它的方法在哪里?

4

5 回答 5

17

Apply a custom theme to your activity, and null out the android:windowContentOverlay attribute.

Define a theme in themes.xml:

<style name="YourTheme" parent="if you want">
  ...   
  <item name="android:windowContentOverlay">@null</item>
  ...
</style>

Apply the theme on your application or the activity in AndroidManifest.xml:

<application android:theme="@style/YourTheme"
  ... >

Hope it helps. It caused me lots of headache...

于 2010-09-09T17:12:59.803 回答
8

在您的布局 xml 中:

<TabWidget ... 
    android:tabStripEnabled="false" >

 ... 

</TabWidget>
于 2010-08-27T09:29:32.120 回答
0

不幸的是,你无法摆脱它。这是如何TabWidget实施的结果。在内部TabWidget是一个ActivityGroup,每个选项卡的内容是它自己的Activity

于 2010-08-23T18:26:20.983 回答
0

似乎这样做的方法是将tabwidget嵌套在LinerLayout中......看这里。

于 2010-08-18T12:40:43.870 回答
0

我建议你使用 GrreenDroid 提供的库:http ://android.cyrilmottier.com/?p=274

只要看看 GDTabActivity,你就可以调整一切并摆脱这个 Bar。

http://android.cyrilmottier.com/medias/actionbar/action_bar_4.png

于 2010-08-25T00:22:40.250 回答