addOnPageChangeListener未定义 [英] addOnPageChangeListener is undefined

查看:2861
本文介绍了addOnPageChangeListener未定义的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经undefined.Here从网上下载一个Github.I code不能运行program.The问题是方法的 addOnPageChangeListener 是的错误:


  

该方法addOnPageChangeListener(TabLayout.TabLayoutOnPageChangeListener)是未定义的类型ViewPager


我应该怎么办?我应该用另一种方法?这里的code:

 进口android.support.design.widget.CollapsingToolbarLayout;
进口android.support.design.widget.CoordinatorLayout;
进口android.support.design.widget.FloatingActionButton;
进口android.support.design.widget.Snackbar;
进口android.support.design.widget.TabLayout;
进口android.support.v4.app.Fragment;
进口android.support.v4.app.FragmentManager;
进口android.support.v4.app.FragmentStatePagerAdapter;
进口android.support.v4.view.ViewPager;
进口android.support.v4.widget.DrawerLayout;
进口android.support.v7.app.ActionBarDrawerToggle;
进口android.support.v7.app.AppCompatActivity;进口的java.util.ArrayList;
公共类FourthActivity扩展AppCompatActivity {//需要此与小吃吧链接
私人CoordinatorLayout mCoordinator;
//需要此设置应用栏的标题
私人CollapsingToolbarLayout mCollapsingToolbarLayout;
私人FloatingActionButton mF​​ab;
私人工具栏mToolbar;
私人DrawerLayout mDrawerLayout;
私人ActionBarDrawerToggle mDrawerToggle;
私人ViewPager mPager;
私人YourPagerAdapter mAdapter;
私人TabLayout mTab​​Layout;@覆盖
保护无效的onCreate(捆绑savedInstanceState){
    super.onCreate(savedInstanceState);
    的setContentView(R.layout.activity_fourth);
    mCoordinator =(CoordinatorLayout)findViewById(R.id.root_coordinator);    mDrawerToggle =新ActionBarDrawerToggle(这一点,mDrawerLayout,mToolbar,R.string.drawer_open,R.string.drawer_close);
    mDrawerLayout.setDrawerListener(mDrawerToggle);
    mDrawerToggle.syncState();    mTabLayout =(TabLayout)findViewById(R.id.tab_layout);
    mAdapter =新YourPagerAdapter(getSupportFragmentManager());
    mPager =(ViewPager)findViewById(R.id.view_pager);
    mPager.setAdapter(mAdapter);
    //注意如何与寻呼机适配器上的标签布局链接
    mTabLayout.setTabsFromPagerAdapter(mAdapter);    //注意标签布局ADN查看传呼机对象的链接方式
    mTabLayout.setupWithViewPager(mPager);
    mPager.addOnPageChangeListener(新TabLayout.TabLayoutOnPageChangeListener(mTabLayout));
    mFab.setOnClickListener(新View.OnClickListener(){
        @覆盖
        公共无效的onClick(视图v){
            //注意如何协调布局对象在这里使用
            Snackbar.make(mCoordinator,FAB单击的Snackbar.LENGTH_SHORT).setAction(DISMISS,NULL).show();
        }
    });    //注意标题是如何设置上合群工具栏布局,而不是工具栏
    mCollapsingToolbarLayout.setTitle(getResources()的getString(R.string.title_activity_fourth));
}


解决方案

找到你的build.gradle支持Android-V4库的依赖,升级版本22.2.1或23.0.1,该行看起来像这样

 编译com.android.support:support-v4:23.0.1

I have downloaded a code from Github.I can not run the program.The problem is the method addOnPageChangeListener is undefined.Here's the error:

The method addOnPageChangeListener(TabLayout.TabLayoutOnPageChangeListener) is undefined for the type ViewPager

What should i do? Should I use another method? Here's the code:

import android.support.design.widget.CollapsingToolbarLayout;
import android.support.design.widget.CoordinatorLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;

import java.util.ArrayList;


public class FourthActivity extends AppCompatActivity {

// Need this to link with the Snackbar
private CoordinatorLayout mCoordinator;
//Need this to set the title of the app bar
private CollapsingToolbarLayout mCollapsingToolbarLayout;
private FloatingActionButton mFab;
private Toolbar mToolbar;
private DrawerLayout mDrawerLayout;
private ActionBarDrawerToggle mDrawerToggle;
private ViewPager mPager;
private YourPagerAdapter mAdapter;
private TabLayout mTabLayout;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_fourth);
    mCoordinator = (CoordinatorLayout) findViewById(R.id.root_coordinator);

    mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, mToolbar, R.string.drawer_open, R.string.drawer_close);
    mDrawerLayout.setDrawerListener(mDrawerToggle);
    mDrawerToggle.syncState();

    mTabLayout = (TabLayout) findViewById(R.id.tab_layout);
    mAdapter = new YourPagerAdapter(getSupportFragmentManager());
    mPager = (ViewPager) findViewById(R.id.view_pager);
    mPager.setAdapter(mAdapter);
    //Notice how the Tab Layout links with the Pager Adapter
    mTabLayout.setTabsFromPagerAdapter(mAdapter);

    //Notice how The Tab Layout adn View Pager object are linked
    mTabLayout.setupWithViewPager(mPager);
    mPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(mTabLayout));


    mFab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //Notice how the Coordinator Layout object is used here
            Snackbar.make(mCoordinator, "FAB Clicked", Snackbar.LENGTH_SHORT).setAction("DISMISS", null).show();
        }
    });

    //Notice how the title is set on the Collapsing Toolbar Layout instead of the Toolbar
    mCollapsingToolbarLayout.setTitle(getResources().getString(R.string.title_activity_fourth));
}

解决方案

Find your dependency of android support-v4 library in build.gradle, upgrade the version to 22.2.1 or 23.0.1, the line looks like this

compile 'com.android.support:support-v4:23.0.1'

这篇关于addOnPageChangeListener未定义的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆