0

Вкладка макета используется для создания прокрутки в андроиде, но мне было интересно, как ее настроить. Я хотел бы показать индикатор в штучной упаковке вместо обычного нижнего индикатора и поместить значение по умолчанию в середину и просто позволить фону изменить. Что-то вроде этогоНастроить вкладку макета

Something like this

Я видел несколько учебников и GitHub проектов, которые позволяют мне настроить кнопки, но не сам индикатор.

Помогает ли андроид сделать это изначально или есть какие-либо репозиции github, которые могут мне помочь?

+0

Check [this] (http://stackoverflow.com/a/36061773/5628333) stackoverflow answer –

+0

@ArsenSench Я уже просмотрел это. Это позволяет мне настроить индикаторную панель внизу (например, изменить ее на круг и прочее), но если я изменю это на ящик, индикатор внизу будет в форме окна, но я хочу, чтобы весь текст был заключен в коробке. Я думаю, что в этом нельзя сделать. – Tyson

+0

теоретически вы можете сделать пустую имя вкладки и использовать макет числа в квадрате как макет индикатора –

ответ

0

Это, как я пользовательские вкладки в моем собственном стиле .. я перебирать каждые вкладки и никакого эффекта, например: масштабирование при выборе или шатра эффект .. вы можете взглянуть на этот Custom TabLayout

ViewGroup vg = (ViewGroup) tabs.getChildAt(0); 
    int tabsCount = vg.getChildCount(); 
    for (int j = 0; j < tabsCount; j++) { 
     View view = vg.getChildAt(j); 
     //change drawable for each tabs 
     view.setBackgroundResource(R.drawable.backgroundtabs); 

     //if you want to diff drawable for each tabs for example tabs is 4 
     //if j == 0 view.setBackgroundResource(R.drawable.backgroundtabs1); 
     //if j == 1 view.setBackgroundResource(R.drawable.backgroundtabs2); 
     //if j == 2 view.setBackgroundResource(R.drawable.backgroundtabs3); 
     //if j == 3 view.setBackgroundResource(R.drawable.backgroundtabs4); 

     ViewGroup vgTab = (ViewGroup) view; 
     int tabChildsCount = vgTab.getChildCount(); 
     for (int i = 0; i < tabChildsCount; i++) { 
      View tabViewChild = vgTab.getChildAt(i); 

      // Get TextView Element 
      if (tabViewChild instanceof TextView) { 
       // change font 
       ((TextView) tabViewChild).setTypeface(tf); 
       // change color 
       ((TextView) tabViewChild).setTextColor(getResources().getColor(R.color.white)); 
       // change size 
       ((TextView) tabViewChild).setTextSize(18); 
       // change padding 
       tabViewChild.setPadding(0, 0, 0, 0); 
       //..... etc... 
      } 
     } 
    } 
Смежные вопросы