0

Как показать заголовок страницы более чем одним словом, не получив второго скрытого?android - Как показать многостраничную страницу страницы ViewPager с помощью IconPagerAdapter, не заставляя второе слово скрываться?

Вот объяснение:

enter image description here

Синий закладка название нормальное название одним словом. Красная метка названия содержит 2 слова, но отображается только 1.

вот код:

Как декларировать пейджера в деятельности:

// Icons in pager tabs 
int[] icons = new int[] { 
R.drawable.ic_tab_contestazione, 
R.drawable.ic_tab_note, 
R.drawable.ic_tab_camera }; 

// Prepares the adapter to attach to the pager 
mAdapter = new NuovaViolazioneAdapter(getSupportFragmentManager(), icons); 

// Inflates pager 
mViewPager = (SwipeableViewPager) findViewById(R.id.viol_classica_pager); 
mViewPager.setAdapter(mAdapter); 
mViewPager.setSwipeable(false); 

// Inflates tab indicator (the upper clickable/scrollable bar) 
mIndicator = (TabPageIndicator) findViewById(R.id.indicator); 
mIndicator.setViewPager(mViewPager); 

// Sets the current page (used when rotated) 
int page = getIntent().getIntExtra(WHICH_PAGE, 0); 
mIndicator.setCurrentItem(page); 

пейджера адаптер:

 /** 
    * Extends FragmentPagerAdapter and Implemenets IconPagerAdapter (so the method getIconResId is allowed). 
    * <p>Sets which fragment has to be inflated for each position. Sets the tab title for each fragement. 
    */ 
    class NuovaViolazioneAdapter extends FragmentStatePagerAdapter implements IconPagerAdapter { 

     private int[] icons; 

     public NuovaViolazioneAdapter(FragmentManager fm, int[] icons) { 
      super(fm); 
      this.icons = icons; 
     } 

     @Override 
     public Fragment getItem(int position) { 

      switch (position) { 
      case POSITION_M_CONTESTAZIONE: 
       return MContestazioneFragment_.getInstance(); 
      case POSITION_NOTE: 
       return NoteFragment_.getInstance(); 
      case POSITION_FOTO: 
       return FotoFragment_.getInstance(); 
      } 
      return null; 
     } 

     @Override 
     public CharSequence getPageTitle(int position) { 
      return NuovaViolazioneActivity.CONTENT[position 
        % NuovaViolazioneActivity.CONTENT.length] 
        .toUpperCase(Locale.ITALIAN); 
     } 

     @Override 
     public int getIconResId(int index) { 
      return icons[index]; 
     } 
    } 
+0

не смог получить вас. Пожалуйста, объясните это подробно? – TheFlash

+0

Метка первой кнопки содержит 2 слова и только 1 показывает, я думаю – azerto00

+0

Да, именно то, что сказал азерто00! –

ответ

0

Я просто имел такую ​​же проблему.

стиль по умолчанию для TabPageIndicator имеет андроида: MaxLines = 1

Если вы измените его на 2, то по крайней мере, второе слово будет отображаться на второй строке. Я также все еще пытаюсь понять, как все это показывать на одной линии.

0

Из вашего макета должен быть доступен один параметр android:Layout_weightSum flag..Please. Ведите, сколько вкладок вы хотите отображать на экране.