Android标签没有图标

时间:2011-09-09 06:48:16

标签: android tabs size

我按以下方式设置了标签:

 spec = tabHost.newTabSpec("tab1").setIndicator("Tab 1").setContent(intent);
    tabHost.addTab(spec);

现在我有一个没有图标的标签,只有一个标题,但它只留下一个图标大小的空白区域,标题位于底部 - 我尝试调整xml中的layout_height,但文本消失了因为它低于截止点。

如何更改标签的大小,并在没有图标的情况下显示标题?

4 个答案:

答案 0 :(得分:11)

答案很简单:你做不到。默认的android选项卡将始终为图像留出一些空白。 但您可以创建自己的选项卡以补偿默认选项卡中的“限制”。这是一个非常好的教程,可以创建自定义标签。

http://joshclemm.com/blog/?p=136

祝你好运, Arkde

答案 1 :(得分:2)

更改TabWidget layout_height和xml中的重力对我有用。文本不在选项卡中居中,而是像以前一样沿着底部对齐。

<TabWidget android:id="@android:id/tabs"
  android:layout_width="fill_parent" android:layout_height="40dp"
  android:gravity="bottom" />

答案 2 :(得分:1)

从布局更改tabhost大小,并仅显示Tab Tile写代码,如下面的代码片段

tabhost=getTabHost();


intent = new Intent(this,MainActivity.class);
spec1 = tabhost.newTabSpec("").setIndicator("main_tab");
spec1.setContent(intent);
tabhost.addTab(spec1);

intent = new Intent(this,xyz.class);
spec2 = tabhost.newTabSpec("").setIndicator("first_tab");
spec2.setContent(intent);
tabhost.addTab(spec2);

答案 3 :(得分:0)

// Center text displayed on a first tab
View view = _tabHost.getTabWidget().getChildAt(0);
if (view != null) {
    // Hide icon
    View tabImage = view.findViewById(android.R.id.icon);
    if (tabImage != null) {
        tabImage.setVisibility(View.GONE);
    }
    // Find text
    TextView tabTitle = (TextView) view.findViewById(android.R.id.title);
    if (tabTitle != null) {
        // Change text gravity
        tabTitle.setGravity(Gravity.CENTER);
        // Remove text view from it's parent and re-add back to reset layout parameters
        ViewGroup parent = (ViewGroup) tabTitle.getParent();
        parent.removeView(tabTitle);
        parent.addView(tabTitle);
        // New default layout parameters will have height set to WRAP_CONTENT, change it to MATCH_PARENT
        ViewGroup.LayoutParams params = tabTitle.getLayoutParams();
        params.height = ViewGroup.LayoutParams.MATCH_PARENT;
    }
}