gpt4 book ai didi

android - 在 Android 中为 ViewPager 使用 fragment

转载 作者:行者123 更新时间:2023-11-29 16:05:45 25 4
gpt4 key购买 nike

谁能告诉我为什么这不起作用?自从它上次运行以来我没有更改过这个文件,但现在我收到以下错误:

import android.app.Fragment;
import android.app.FragmentManager;
import android.os.Bundle;
import android.support.v13.app.FragmentStatePagerAdapter;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;

public class MainActivity extends FragmentActivity {

private final static int NUM_PAGES = 2;
private ViewPager mPager;
private ScreenSlidePagerAdapter mAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);

// Instantiate a ViewPager and a PagerAdapter.
mPager = (ViewPager) findViewById(R.id.pager);
mAdapter = new ScreenSlidePagerAdapter(getFragmentManager());
mPager.setAdapter(mAdapter);
mPager.setCurrentItem(2);
}

private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter {
public ScreenSlidePagerAdapter(FragmentManager fm) {
super(fm);
}

@Override
public Fragment getItem(int i) {

Fragment frag = null;

switch (i) {
case 0:
frag = new PageOneFragment();
break;
case 1:
frag = new PageTwoFragment();
break;

}
return frag;
}

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

错误在“frag = new PageTwoFragment();”其中指出“类型不匹配:无法从 PageTwoFragment 转换为 Fragment”。

也许我应该从现在开始创建两个项目,上一个好的版本和当前的工作项目。这是别人做的事吗?

谢谢

最佳答案

问题是,您正在混合使用 API11 中引入的 Android fragment 和来自 android 支持库的 fragment 。

您必须使用其中之一,但不能同时使用。

将导入更改为

import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.os.Bundle;
import android.support.v13.app.FragmentStatePagerAdapter;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;

并将 getFragmentManager() 更改为 getSupportFragmentManager()

它将使用支持库工作。

调用 mPager.setCurrentItem(2); 使用 2 个 fragment 的寻呼机会崩溃。在您的情况下,只有 01 是有效值。

关于android - 在 Android 中为 ViewPager 使用 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18673444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com