2016-06-28 38 views
1

我有PodCastTab ....我想完全显示TabName? 我不问问TabHost? TabHost和TabLayout是不同的... 这是标签如何增加TabLayout中的选项卡文字大小?

截图

一次看到我的代码:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    //Initializing the tablayout 
    tabLayout = (TabLayout) findViewById(R.id.tabLayout); 
    //Adding the tabs using addTab() method 
    tabLayout.addTab(tabLayout.newTab().setText("Home").setIcon(R.drawable.home_selector)); 

    tabLayout.addTab(tabLayout.newTab().setText("News").setIcon(R.drawable.news_selector)); 
    tabLayout.addTab(tabLayout.newTab().setText("Videos").setIcon(R.drawable.video_selector)); 
    tabLayout.addTab(tabLayout.newTab().setText("PodCasts").setIcon(R.drawable.podcast_selector)); 
    tabLayout.addTab(tabLayout.newTab().setText("More").setIcon(R.drawable.more_selector)); 
    tabLayout.setTabGravity(TabLayout.GRAVITY_FILL); 
    //tabLayout.setupWithViewPager(viewPager); 

    //Initializing viewPager 
    viewPager = (ViewPager) findViewById(R.id.pager); 

    //Creating our pager adapter 
    ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager(), tabLayout.getTabCount()); 

    //Adding adapter to pager 
    viewPager.setAdapter(adapter); 

    viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout)); 

    tabLayout.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(viewPager) { 
     @Override 
     public void onTabSelected(TabLayout.Tab tab) { 

      if (tab.getPosition() == 0) { 
       bottombar.show(); 
      } else if (tab.getPosition() == 1) { 
       bottombar.hide(); 
      } else if (tab.getPosition() == 2) { 
       bottombar.hide(); 
      } else if (tab.getPosition() == 3) { 
       bottombar.hide(); 
      } 
      super.onTabSelected(tab); 
     } 

     @Override 
     public void onTabUnselected(TabLayout.Tab tab) { 
      super.onTabUnselected(tab); 

     } 
    }); 
} 

这是XML文件

<LinearLayout 
android:id="@+id/main_layout" 
android:orientation="vertical" 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".Activity.MainActivity"> 


<!-- our tablayout to display tabs --> 

<android.support.design.widget.TabLayout 
    android:id="@+id/tabLayout" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:background="?attr/colorPrimary" 
    android:minHeight="?attr/actionBarSize" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
    app:tabBackground="@drawable/shape" 
    android:textAlignment="center" 
    app:tabTextColor="#838587" 
    app:tabSelectedTextColor="#fafafa" 
    app:tabIndicatorColor="#fffeff" 
    app:tabIndicatorHeight="2dp" 
    app:tabMode="fixed" 
    app:tabTextAppearance="@style/MyTabLayoutTextAppearance" 
    android:fitsSystemWindows="true" 
    app:tabMaxWidth="250dp" 
    android:minWidth="150sp" 
    app:tabGravity="fill"> 
</android.support.design.widget.TabLayout> 
<android.support.v4.view.ViewPager 
    android:id="@+id/pager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true"/> 

enter image description here 如何显示完整的标签文本?

+0

的可能的复制(http://stackoverflow.com/questions/19442084/change-the-text-size-in-tab-in [Android电子标签更改文字大小] -android) – Ironman

回答

0

您可以通过TabLayout

首先做到这一点,如果不存在,你吹你的标签,使用

RelativeLayout tab = (RelativeLayout) LayoutInflater 
       .from(MainActivity.this) 
       .inflate(R.layout.tab_layout, null, false); 

,然后创建一个新的标签,并设置使用

tab_layout.newTab().setCustomView(tab); 
自定义视图

请注意,如果您已有选项卡(假设您正在使用ViewPager),则可以在特定索引处获取选项卡,而不是创建新通过调用

tab_layout.getTabAt(0).setCustomView(tab); 
+0

曾经见过上面的代码 –

相关问题