2016-06-28 36 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

曾經見過上面的代碼 –

相關問題