【问题标题】:Remove the bottom line border in tab bar? (And change selected color)删除标签栏中的底线边框? (并更改所选颜色)
【发布时间】:2010-08-22 21:26:49
【问题描述】:

是否可以删除标签栏中显示的底线?未选中时为灰色。

是否可以将淡黄色更改为其他颜色?

布局xml:http://pastebin.com/M2KqtH1r

【问题讨论】:

    标签: android user-interface


    【解决方案1】:

    只需在 xml 文件中的 tabWidget 中执行此操作即可。

    android:tabStripEnabled="false"
    

    希望你能明白。 ;)

    【讨论】:

    • 这应该被接受为正确的答案,因为它是这样做的简单方法。像 Good Guy Greg 的回答一样,同时删除我的标签图标。
    • 完美。要在 java 中启用,tabHost.getTabWidget().setStripEnabled(false);
    【解决方案2】:

    在 AndroidManifest.xml 中:

     <activity android:name=".ActivityName" android:theme="@style/tabTheme"/> 
    

    在 values/styles.xml 中:

     <style name="tabTheme" parent="android:style/Theme"> 
          <item name="android:tabWidgetStyle">@style/Widget.TabWidget</item>
     </style> 
    
     <style name="Widget.TabWidget" parent="android:Theme"> 
          <item name="android:tabStripEnabled">false</item>
     </style>  
    

    【讨论】:

    • 感谢您的加入,很高兴知道在 Android 2.2 即 API 级别 8 中引入了选项“tabStripEnabled”。对于较旧的 API,这里有一个解决方法:stackoverflow.com/questions/3164325/…
    【解决方案3】:

    android:tabStripEnabled="false" 对我不起作用
    通过执行以下操作,我能够使其正常工作

    <android.support.design.widget.TabLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:tabIndicatorColor="@android:color/transparent"
            app:tabIndicatorHeight="0dp" />
    

    这两个是主要的东西

     app:tabIndicatorColor="@android:color/transparent"
                app:tabIndicatorHeight="0dp"
    

    【讨论】:

    • 这对于 TabLayout 是正确的。接受的答案适用于 TabWidget
    【解决方案4】:

    您已自定义标签指示器。那就是覆盖你的tabwidget样式。我已经有这个问题了。检查这两个帖子。 post1post2 。希望对您有所帮助。

    【讨论】:

    • 所以基本上我必须复制这些当前的标签图像,用setIndicator添加它们,然后选择器线不会出现?
    • 嗯 可以提取Android默认标签图片吗?
    【解决方案5】:

    最后我解决了:

    android:alpha="0"
    

    这里是完整的代码:

    <?xml version="1.0" encoding="utf-8"?>
    <TabHost xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
        <LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:gravity="center_horizontal">
            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:tabStripEnabled="false"
                android:alpha="0"
                style="@style/TabStyle" />
            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" />
        </LinearLayout>
    </TabHost>
    

    【讨论】:

      【解决方案6】:

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

      【讨论】:

      • 我希望这会奏效,但它没有。这家伙似乎正在运行 1.5,但我正在运行 2.2。但是我已经用我的布局 xml 更新了我的帖子。
      【解决方案7】:

      要禁用下面的那一行,请使用选项卡:

      app:tabIndicator="@null"
      

      【讨论】:

        猜你喜欢
        • 2018-04-12
        • 2021-11-09
        • 2012-09-02
        • 1970-01-01
        • 1970-01-01
        • 2015-09-12
        • 1970-01-01
        • 2013-10-21
        • 1970-01-01
        相关资源
        最近更新 更多