Quando a tela está em pé a ActionBar e as Tabs ficam certas:
Mas quando a tela fica deitada, O nome na ActionBar e as Tabs ficam pequenas:
Minha Toolbar(ActionBar):
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
É um arquivo separado (include_toolbar.xml) ai insiro nos outros layouts assim:
<include layout="@layout/include_toolbar" />
Minhas Tabs(O controle faço por ViewPager):
<!-- As tabs são apenas para vizualizar -->
<android.support.design.widget.TabLayout
android:id="@+id/tabLayoutPedido"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary" />
<!-- O ViewPager é preechido com os fragments via TabsPedidoAdapter -->
<android.support.v4.view.ViewPager
android:id="@+id/viewpagerPedido"
android:layout_width="match_parent"
android:layout_height="0px"
android:layout_weight="1"
android:background="@android:color/white" />
Classe TabsPedidoAdapter :
public class TabsPedidoAdapter extends FragmentPagerAdapter {
private Context context;
public TabsPedidoAdapter(Context context, FragmentManager fm) {
super(fm);
this.context = context;
}
@Override
public int getCount() {
return 2;
}
@Override
public CharSequence getPageTitle(int position) {
if (position == 0) {
return context.getString(R.string.pedido_dados);
} else {
return context.getString(R.string.pedido_itens);
}
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
return super.instantiateItem(container, position);
}
@Override
public Fragment getItem(int position) {
Fragment f;
if (position == 0) {
f = new DadosPedidoFragment();
} else {
f = new ItensPedidoFragment();
}
return f;
}
}
PedidoActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pedido);
setUpToolbar();
mViewPager = (ViewPager) findViewById(R.id.viewpagerPedido);
tabsPedidoAdapter = new TabsPedidoAdapter(this, getSupportFragmentManager());
mViewPager.setAdapter(tabsPedidoAdapter);
//Tabs
tabLayout = (TabLayout) findViewById(R.id.tabLayoutPedido);
// Cor branca no texto (o fundo azul foi definido no layout
int cor = getResources().getColor(R.color.white);
tabLayout.setTabTextColors(cor, cor);
//Adiciona Tabs
tabLayout.addTab(tabLayout.newTab().setText(R.string.pedido_dados));
tabLayout.addTab(tabLayout.newTab().setText(R.string.pedido_itens));
//Listener para tratar eventos do clique na tab
tabLayout.setOnTabSelectedListener(this);
//Se mudar o ViewPager atualiza a tab selecionada
mViewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
}
protected void setUpToolbar() {
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
if(toolbar != null){
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
//getSupportActionBar().setDisplayShowHomeEnabled(true);
}
}