摆脱TabWidget下的界限

Den*_*sky 12 android line tabwidget

我有下一个布局的简单标签活动:

    <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"          />
Run Code Online (Sandbox Code Playgroud)

我使用按钮作为标签的指示器

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)));
Run Code Online (Sandbox Code Playgroud)

在这种情况下,FrameLayout总是在顶部有黑线和阴影效果(你可以在按钮下看到它):

替代文字

问题是:我怎样摆脱这条线?在Android源中绘制它的方法在哪里?

小智 17

将自定义主题应用于您的活动,并将android:windowContentOverlay属性清空.

在themes.xml中定义主题:

<style name="YourTheme" parent="if you want">
  ...   
  <item name="android:windowContentOverlay">@null</item>
  ...
</style>
Run Code Online (Sandbox Code Playgroud)

在您的应用程序或AndroidManifest.xml中的活动中应用主题:

<application android:theme="@style/YourTheme"
  ... >
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你.这让我很头疼......

  • 这也删除了当前活动的窗口内容覆盖.有没有办法只删除标签主机意图的叠加层? (2认同)
  • 奇迹般有效! (2认同)

plu*_*ind 8

在你的布局xml中:

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

 ... 

</TabWidget>
Run Code Online (Sandbox Code Playgroud)

  • android:tabStripEnabled仅适用于2.2 (4认同)