Ami*_*mir 5 android material-design androiddesignsupport android-tablayout
最近谷歌添加android.support.design.widget.TabItem在supportDesign作为文档说:
TabItem是一个特殊的"视图",允许您在布局中声明TabLayout的选项卡项.此视图实际上并未添加到TabLayout,它只是一个虚拟对象,允许设置选项卡项的文本,图标和自定义布局.
但是当我加入TabItems我的时候TabLayout:
<android.support.design.widget.TabLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<android.support.design.widget.TabItem
android:text="@string/tab_text"/>
<android.support.design.widget.TabItem
android:icon="@drawable/ic_android"/>
</android.support.design.widget.TabLayout>
Run Code Online (Sandbox Code Playgroud)
没有显示任何内容(事实上Tabs的位置存在,但Icon/Text不存在).有没有人知道如何TabItem通过xml 使用?
基于这个答案,TabItemtabLayout.setupViewPager有冲突并且图标消失。为了使其工作,您应该实现如下两种方法并避免使用setupViewPager方法:
tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
pager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
tabLayout.getTabAt(position).select();
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5755 次 |
| 最近记录: |