尝试将Swipe实现为现有代码。在getSupportFragmentManager中获取不兼容的类型

时间:2017-10-03 14:09:27

标签: java android android-fragments

错误:不兼容的类型。 发现:' com.example.MyPagerAdapter',必需:' android.support.v4.app.FragmentPagerAdapter'

我正在尝试实现滑动以在片段之间切换,以及我有一个菜单图标,可以打开一个选项列表。列表菜单部分效果很好。但是,当我尝试将MainActivity连接到MyPagerAdapter时,我收到上述错误。由于代码相当冗长,我将给出相关部分。如果我需要用更多代码来完成它,我当然会这样做。

MainActivity.java

import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;

public class MainActivity extends AppCompatActivity {

/** Swipe **/
FragmentPagerAdapter adapterViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_main);
    mTitle = mDrawerTitle = getTitle();
    /** Swipe **/
    ViewPager vpPager = (ViewPager) findViewById(R.id.vpPager);
    adapterViewPager = new MyPagerAdapter(getSupportFragmentManager()); /** Incompatible types  **/

    vpPager.setAdapter(adapterViewPager);

activity_main.xml中

<android.support.v4.view.ViewPager
    android:id="@+id/vpPager"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
</android.support.v4.view.ViewPager>

MyPagerAdapter.java

import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;

public class MyPagerAdapter extends FragmentStatePagerAdapter {

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

1 个答案:

答案 0 :(得分:0)

在声明中,替换

FragmentPagerAdapter adapterViewPager;

使用:

MyPagerAdapter adapterViewPager;