目的
タブ(TabLayout)にラベルやアイコンを設定する一案メモ。
実装方法
以下のように、ラベルやアイコン作成部分は省略しているが、
viewを作り、TabLayout
にsetCustomView
する。
TabLayout tabLayout;
FragmentPagerAdapter adapter;
for(int i = 0; i < adapter.getCount(); i++) {
//1つのタブに表示するView設定を行う
View view = LayoutInflater.from(getApplicationContext()).inflate(R.layout.tablayout, tabLayout, false);
//上のvewにラベルやアイコンとかを設定する。
~~
//上のViewをTabLayoutに設定する
TabLayout.Tab tab = tabLayout.getTabAt(i);
tab.setCustomView;
}
懸念点
自由なレイアウトを設定できる半面、このやり方だとstate_selected
による選択時の挙動ができないと思う。。。
適切なやり方か不明のため、文頭に一案
と書きました。
他にも設定する方法がいくつかあるようです。
柔軟性があるけど、初心者にとっては逆にそれがキツイ