拉伸滑动标签宽度以填充整个空间

时间:2014-12-08 17:10:46

标签: android tabs height size width

使用支持库时,是否有任何方法可以在纵向模式下在Android滑动选项卡中拉伸标签宽度(如果可能,还可以更改高度的方式)? 目前设置:

    <item name="android:actionBarSize">90dp</item>
    <item name="actionBarSize">90dp</item>
    <item name="actionBarTabStyle">@style/MyActionBarTab</item>
    <item name="android:actionBarTabStyle">@style/MyActionBarTab</item>

<style name="MyActionBarTab"
    parent="@style/Widget.AppCompat.ActionBar.TabView">
    <item name="android:height">90dp</item>
</style>

在样式上没有帮助。还可以动态创建自定义视图,参数为最小宽度和高度:

    // Tab B
    LinearLayout lila_b = new LinearLayout(this);
    lila_b.setMinimumHeight(300);
    lila_b.setMinimumHeight(300);
    lila_b.setBackgroundColor(Color.parseColor("#ffc600"));
    lila_b.setOrientation(LinearLayout.HORIZONTAL);
    lila_b.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
    ImageView imvi_b = new ImageView(this);
    imvi_b.setImageResource(R.drawable.tabs_history);
    imvi_b.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.MATCH_PARENT));
    imvi_b.setAdjustViewBounds(true);
    lila_b.addView(imvi_b);
    TextView tevi_b = new TextView(this);
    tevi_b.setText(getString(R.string.main_history));
    tevi_b.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
    tevi_b.setTextColor(Color.WHITE);
    tevi_b.setGravity(Gravity.CENTER);
    lila_b.addView(tevi_b);
    Tab newTab = getSupportActionBar().newTab().setTabListener(this);
    newTab.setCustomView(lila);
    getSupportActionBar().addTab(historyTab);

没有帮助。 即便如此:

    final View tabView = actionBar.getTabAt(0).getCustomView();
    final View tabContainerView = (View) tabView.getParent();
    tabView.setMinimumHeight(300);
    tabContainerView.setMinimumHeight(300);

没有做任何事情。我没有想法。 任何解决方案如何扩展这些标签?

P.S。问题与Google支持库和滑动标签有关。我目前对使用第三方库感兴趣......

1 个答案:

答案 0 :(得分:0)

确定。最后! 简单添加:

<dimen name="abc_action_bar_stacked_tab_max_width">1000dp</dimen>
<dimen name="abc_action_bar_stacked_max_height">408dp</dimen>

在尺寸强制标签中拉伸,水平和垂直。最后有两个标签,它们在平板电脑上从左到右填充所有空间。 Taht是我需要的。