for (int i = 0; i < adapters.getCount(); i++) {
TabLayout.Tab tab = tbl_time_title.getTabAt(i);//获得每一个tab
tab.setCustomView(R.layout.tab_item);//给每一个tab设置view
if (i == 0) {
// 设置第一个tab的TextView是被选择的样式
tab.getCustomView().findViewById(R.id.tab_text).setSelected(true);//第一个tab被选中
tab.getCustomView().findViewById(R.id.tab_text).setBackground(getResources().getDrawable(R.drawable.choose_appoine_time));//第一个tab被选中
}
TextView textView = (TextView) tab.getCustomView().findViewById(R.id.tab_text);
textView.setText(titles.get(i));//设置tab上的文字
}
tbl_time_title.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
tab.getCustomView().findViewById(R.id.tab_text).setSelected(true);
tab.getCustomView().findViewById(R.id.tab_text).setBackground(getResources().getDrawable(R.drawable.choose_appoine_time));
vp_time_list.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
tab.getCustomView().findViewById(R.id.tab_text).setSelected(false);
tab.getCustomView().findViewById(R.id.tab_text).setBackground(getResources().getDrawable(R.drawable.unchoose_appoine_time));
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
Android 自定义tablayout
最新推荐文章于 2024-05-01 15:19:30 发布
本文详细介绍了如何在Android应用中使用TabLayout组件,并通过自定义view来改变Tab的样式,包括如何设置选中状态下的背景和文字样式,以及如何监听Tab的选择事件。
1891

被折叠的 条评论
为什么被折叠?



