Android 滑动选项卡不显示';我不工作,我不工作;我在屏幕上看不到

Android 滑动选项卡不显示';我不工作,我不工作;我在屏幕上看不到,android,tabs,android-viewpager,swipe,Android,Tabs,Android Viewpager,Swipe,但是遇到了一个问题。当我运行应用程序时,我看不到我的屏幕在滑动,也看不到标签。你能帮忙吗 这是我的密码: 我在评论的行中得到一个错误。 以下是我的寻呼机适配器代码: public class ViewPagerAdapter extends FragmentPagerAdapter { ArrayList<Fragment> fragments= new ArrayList<>(); ArrayList<String> tabTitles

但是遇到了一个问题。当我运行应用程序时,我看不到我的屏幕在滑动,也看不到标签。你能帮忙吗 这是我的密码:

我在评论的行中得到一个错误。 以下是我的寻呼机适配器代码:

public class ViewPagerAdapter extends FragmentPagerAdapter {

    ArrayList<Fragment> fragments= new ArrayList<>();
    ArrayList<String> tabTitles = new ArrayList<>();

    public void addFragments(Home fragments, String titles){

        this.fragments.add(fragments);
        this.tabTitles.add(titles);


    }

    public ViewPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        return fragments.get(position);
    }

    @Override
    public int getCount() {
        return fragments.size();
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return tabTitles.get(position);
    }
}
public类ViewPagerAdapter扩展了FragmentPagerAdapter{
ArrayList片段=新的ArrayList();
ArrayList tabTitles=新的ArrayList();
公共void addFragments(主片段、字符串标题){
this.fragments.add(fragments);
this.tabTitles.add(titles);
}
公共ViewPagerAdapter(碎片管理器fm){
超级(fm);
}
@凌驾
公共片段getItem(int位置){
返回碎片。获取(位置);
}
@凌驾
public int getCount(){
返回fragments.size();
}
@凌驾
公共字符序列getPageTitle(int位置){
返回tabTitles.get(位置);
}
}
在我的XML中,我只有Viewpager、Toolbar和TableLayout。
请提供帮助。

您需要在
addFragments

试试这个:

public void addFragments(Fragment fragments, String titles)
而不是

public void addFragments(Home fragments, String titles)

我希望这可能会对您有所帮助

可能是这样的:

Home fragments
尝试将更改为:

Fragment fragments
方法如下:

public void addFragments(Fragment fragments, String titles){

        this.fragments.add(fragments);
        this.tabTitles.add(titles);


    }
因此,在
方法中,您有
主片段
作为
参数
,当您调用与主片段不同的其他片段时,因为
参数
是主片段,您会得到错误,要修复,只需按照我说的将参数更改为
片段片段
。这是个小错误。

试试这个

在xml布局文件中

 <android.support.design.widget.TabLayout
        android:id="@+id/tabLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimary"
        app:tabSelectedTextColor="@android:color/white"/>

<android.support.v4.view.ViewPager
    android:id="@+id/viewPager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>
然后为寻呼机适配器创建一个类

public class TabPagerAdapter extends FragmentPagerAdapter {
public TabPagerAdapter(FragmentManager fm, int tabCount) {
    super(fm);

}

@Override
public Fragment getItem(int position) {

    switch (position) {
        case 0:
            FragmentA fragmentA = new FragmentA();
            return fragmentFoods;
        case 1:
            FragmentDrinks fragmentA = new FragmentA();
            return fragmentA;

        default:
            return null;
    }

}

@Override
public int getCount() {
    return 2;
}
}

你能添加问题的na图像吗?我看不出你的代码有任何错误,但使用na图像我可以更好地帮助你。请查看。嗯,好的,我正在寻找其他内容。我已经编辑了我的帖子,现在可以了,但我仍然看不到我的工具栏选项卡
    tabLayout.addTab(tabLayout_ordering.newTab().setText("Tab 1"));
    tabLayout.addTab(tabLayout_ordering.newTab().setText("Tab 2"));

    viewPager.setAdapter(pagerAdapter);
    viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout_ordering));


    tabLayout_ordering.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {

            viewPager.setCurrentItem(tab.getPosition());

        }

        @Override
        public void onTabUnselected(TabLayout.Tab tab) {

        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {

        }
    });
public class TabPagerAdapter extends FragmentPagerAdapter {
public TabPagerAdapter(FragmentManager fm, int tabCount) {
    super(fm);

}

@Override
public Fragment getItem(int position) {

    switch (position) {
        case 0:
            FragmentA fragmentA = new FragmentA();
            return fragmentFoods;
        case 1:
            FragmentDrinks fragmentA = new FragmentA();
            return fragmentA;

        default:
            return null;
    }

}

@Override
public int getCount() {
    return 2;
}
}