可滚动标签布局中的额外标签
Extra tab in the scrollable tablayout
我在 tablayout 部分有问题。我创建了一个可滚动的 tablayout,其中包含 view pager
http://www.androidhive.info/2015/09/android-material-design-working-with-tabs/
最后我看到了一个空标签。我可以单击该选项卡,但没有任何显示。但是当我滑动查看寻呼机时,它永远不会进入该选项卡。
如果这个问题已经解决了请在评论中给我一个link...
提前致谢...
这是我的代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.event_home);
final Loading loading = new Loading(this);
loading.show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
loading.cancel();
}
}, Constants.WAIT_TIME);
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
viewPager = (ViewPager) findViewById(R.id.viewpager);
viewPager.setOffscreenPageLimit(7);
Interpolator sInterpolator = new AccelerateInterpolator();
try {
Field mScroller;
mScroller = ViewPager.class.getDeclaredField("mScroller");
mScroller.setAccessible(true);
DecelerateInterpolator decelerateInterpolator = new DecelerateInterpolator();
FixedSpeedScroller scroller = new FixedSpeedScroller(viewPager.getContext(), decelerateInterpolator);
scroller.SetDuration(500);
mScroller.set(viewPager, scroller);
} catch (NoSuchFieldException e) {
} catch (IllegalArgumentException e) {
} catch (IllegalAccessException e) {
}
setupViewPager(viewPager);
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
setupTabIcons();
private void setupTabIcons() {
tabLayout.addTab(tabLayout.newTab());
tabLayout.getTabAt(0).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(1).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(2).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(3).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(4).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(5).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(6).setCustomView(R.layout.event_tablayout);
View tab1_view = tabLayout.getTabAt(0).getCustomView();
View tab2_view = tabLayout.getTabAt(1).getCustomView();
View tab3_view = tabLayout.getTabAt(2).getCustomView();
View tab4_view = tabLayout.getTabAt(3).getCustomView();
View tab5_view = tabLayout.getTabAt(4).getCustomView();
View tab6_view = tabLayout.getTabAt(5).getCustomView();
View tab7_view = tabLayout.getTabAt(6).getCustomView();
TextView tab1_title = (TextView) tab1_view.findViewById(R.id.tabtitle);
ImageView img1 = (ImageView) tab1_view.findViewById(R.id.tabicon);
TextView tab2_title = (TextView) tab2_view.findViewById(R.id.tabtitle);
ImageView img2 = (ImageView) tab2_view.findViewById(R.id.tabicon);
TextView tab3_title = (TextView) tab3_view.findViewById(R.id.tabtitle);
ImageView img3 = (ImageView) tab3_view.findViewById(R.id.tabicon);
TextView tab4_title = (TextView) tab4_view.findViewById(R.id.tabtitle);
ImageView img4 = (ImageView) tab4_view.findViewById(R.id.tabicon);
TextView tab5_title = (TextView) tab5_view.findViewById(R.id.tabtitle);
ImageView img5 = (ImageView) tab5_view.findViewById(R.id.tabicon);
TextView tab6_title = (TextView) tab6_view.findViewById(R.id.tabtitle);
ImageView img6 = (ImageView) tab6_view.findViewById(R.id.tabicon);
TextView tab7_title = (TextView) tab7_view.findViewById(R.id.tabtitle);
ImageView img7 = (ImageView) tab7_view.findViewById(R.id.tabicon);
tab1_title.setText("DASHBOARD");
img1.setImageResource(R.drawable.ic_home);
tab2_title.setText("ABOUT");
img2.setImageResource(R.drawable.ic_information);
tab3_title.setText("QR CODE");
img3.setImageResource(R.drawable.ic_qrcode);
tab4_title.setText("UPDATES");
img4.setImageResource(R.drawable.ic_announcement);
tab5_title.setText("TEAM");
img5.setImageResource(R.drawable.ic_team);
tab6_title.setText(" CONTACT US");
img6.setImageResource(R.drawable.ic_mobile_phone);
tab7_title.setText("REGISTER");
img7.setImageResource(R.drawable.ic_register);
}
public void setupViewPager(ViewPager viewPager) {
Adapter_pager adapter = new Adapter_pager(getSupportFragmentManager());
adapter.addFrag(new Dashboard(), "Dashboard");
adapter.addFrag(new Details(), "Details");
adapter.addFrag(new Qrcodedisplay(), "Qr codes");
adapter.addFrag(new Update(), "Update");
adapter.addFrag(new Teams(), "Team");
adapter.addFrag(new Contact_Us(), "Contact");
adapter.addFrag(new Event_register(), "Register");
viewPager.setAdapter(adapter);
}
您可以尝试将其添加到您的 tabLayout
tabLayout.setTabMode(TabLayout.MODE_FIXED);
如果这不起作用,请 post 你 xml of that activity 并确保你已将 tabLayout 的宽度设置为 match_parent。
我不确定,但请在您的代码中尝试一下
private void setupTabIcons() {
tabLayout.addTab(tabLayout.newTab());
.....
}
删除该行,因为它看起来像你正在添加一个空标签
我在 tablayout 部分有问题。我创建了一个可滚动的 tablayout,其中包含 view pager
http://www.androidhive.info/2015/09/android-material-design-working-with-tabs/
最后我看到了一个空标签。我可以单击该选项卡,但没有任何显示。但是当我滑动查看寻呼机时,它永远不会进入该选项卡。
如果这个问题已经解决了请在评论中给我一个link... 提前致谢...
这是我的代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.event_home);
final Loading loading = new Loading(this);
loading.show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
loading.cancel();
}
}, Constants.WAIT_TIME);
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
viewPager = (ViewPager) findViewById(R.id.viewpager);
viewPager.setOffscreenPageLimit(7);
Interpolator sInterpolator = new AccelerateInterpolator();
try {
Field mScroller;
mScroller = ViewPager.class.getDeclaredField("mScroller");
mScroller.setAccessible(true);
DecelerateInterpolator decelerateInterpolator = new DecelerateInterpolator();
FixedSpeedScroller scroller = new FixedSpeedScroller(viewPager.getContext(), decelerateInterpolator);
scroller.SetDuration(500);
mScroller.set(viewPager, scroller);
} catch (NoSuchFieldException e) {
} catch (IllegalArgumentException e) {
} catch (IllegalAccessException e) {
}
setupViewPager(viewPager);
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
setupTabIcons();
private void setupTabIcons() {
tabLayout.addTab(tabLayout.newTab());
tabLayout.getTabAt(0).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(1).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(2).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(3).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(4).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(5).setCustomView(R.layout.event_tablayout);
tabLayout.getTabAt(6).setCustomView(R.layout.event_tablayout);
View tab1_view = tabLayout.getTabAt(0).getCustomView();
View tab2_view = tabLayout.getTabAt(1).getCustomView();
View tab3_view = tabLayout.getTabAt(2).getCustomView();
View tab4_view = tabLayout.getTabAt(3).getCustomView();
View tab5_view = tabLayout.getTabAt(4).getCustomView();
View tab6_view = tabLayout.getTabAt(5).getCustomView();
View tab7_view = tabLayout.getTabAt(6).getCustomView();
TextView tab1_title = (TextView) tab1_view.findViewById(R.id.tabtitle);
ImageView img1 = (ImageView) tab1_view.findViewById(R.id.tabicon);
TextView tab2_title = (TextView) tab2_view.findViewById(R.id.tabtitle);
ImageView img2 = (ImageView) tab2_view.findViewById(R.id.tabicon);
TextView tab3_title = (TextView) tab3_view.findViewById(R.id.tabtitle);
ImageView img3 = (ImageView) tab3_view.findViewById(R.id.tabicon);
TextView tab4_title = (TextView) tab4_view.findViewById(R.id.tabtitle);
ImageView img4 = (ImageView) tab4_view.findViewById(R.id.tabicon);
TextView tab5_title = (TextView) tab5_view.findViewById(R.id.tabtitle);
ImageView img5 = (ImageView) tab5_view.findViewById(R.id.tabicon);
TextView tab6_title = (TextView) tab6_view.findViewById(R.id.tabtitle);
ImageView img6 = (ImageView) tab6_view.findViewById(R.id.tabicon);
TextView tab7_title = (TextView) tab7_view.findViewById(R.id.tabtitle);
ImageView img7 = (ImageView) tab7_view.findViewById(R.id.tabicon);
tab1_title.setText("DASHBOARD");
img1.setImageResource(R.drawable.ic_home);
tab2_title.setText("ABOUT");
img2.setImageResource(R.drawable.ic_information);
tab3_title.setText("QR CODE");
img3.setImageResource(R.drawable.ic_qrcode);
tab4_title.setText("UPDATES");
img4.setImageResource(R.drawable.ic_announcement);
tab5_title.setText("TEAM");
img5.setImageResource(R.drawable.ic_team);
tab6_title.setText(" CONTACT US");
img6.setImageResource(R.drawable.ic_mobile_phone);
tab7_title.setText("REGISTER");
img7.setImageResource(R.drawable.ic_register);
}
public void setupViewPager(ViewPager viewPager) {
Adapter_pager adapter = new Adapter_pager(getSupportFragmentManager());
adapter.addFrag(new Dashboard(), "Dashboard");
adapter.addFrag(new Details(), "Details");
adapter.addFrag(new Qrcodedisplay(), "Qr codes");
adapter.addFrag(new Update(), "Update");
adapter.addFrag(new Teams(), "Team");
adapter.addFrag(new Contact_Us(), "Contact");
adapter.addFrag(new Event_register(), "Register");
viewPager.setAdapter(adapter);
}
您可以尝试将其添加到您的 tabLayout
tabLayout.setTabMode(TabLayout.MODE_FIXED);
如果这不起作用,请 post 你 xml of that activity 并确保你已将 tabLayout 的宽度设置为 match_parent。
我不确定,但请在您的代码中尝试一下
private void setupTabIcons() {
tabLayout.addTab(tabLayout.newTab());
.....
}
删除该行,因为它看起来像你正在添加一个空标签