无法解决方法' setupwithviewpager'

时间:2018-02-08 10:16:35

标签: android android-studio android-viewpager android-tablayout viewpagerindicator

给我解决这个问题......我是新的Android开发人员,所以我不知道这个错误。所以一旦我问我回答......我等他问题。

 private void setupViewpager(){
       final ViewPager viewPager=(ViewPager)findViewById(R.id.viewpager);
        addTabs(viewPager);
        TableLayout tableLayout=(TableLayout)findViewById(R.id.tabs);
        tableLayout.setupWithViewPager(viewPager);

    }

3 个答案:

答案 0 :(得分:3)

您正在将标签引用到TableLayout中,这是错误的

您使用 TableLayout 代替 TabLayout 使用TabLayout代替TableLayout

//Replace your method with this code of mine
private void setupViewpager(){
       ViewPager viewPager=(ViewPager)findViewById(R.id.viewpager);
        addTabs(viewPager);
        TabLayout tabLayout=(TabLayout)findViewById(R.id.tabs);
        tabLayout.setupWithViewPager(viewPager);

    }

使用以上编写的方法替换您的setupViewpager方法,它将解决您的错误。

答案 1 :(得分:0)

你做错了拼写错误,替换这个

TableLayout tableLayout=(TableLayout)findViewById(R.id.tabs);

TabLayout tabLayout=(TabLayout)findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);

希望这有帮助。

答案 2 :(得分:0)

使用TabLayout代替TableLayout

TableLayoutTabLayout是Android中的两种不同布局,如果您使用的是ViewPager,则必须使用TabLayout

ViewPager viewPager; // Global Variable
TabLayout tablayout;

     private void setupViewpager(){
            viewPager=(ViewPager)findViewById(R.id.viewpager);
            addTabs(viewPager);
            tablayout=(TabLayout)findViewById(R.id.tabs);
            tablayout.setupWithViewPager(viewPager);

        }

如果您在使用TabLayout创建ViewPager时遇到更多问题请参阅本教程:

  1. https://www.simplifiedcoding.net/android-tablayout-example-using-viewpager-fragments/

    2。https://www.androidhive.info/2013/10/android-tab-layout-with-swipeable-views-1/