下面是我的主要活動類:getSupportFragmentManager()無法解析方法
public class MainActivity extends Activity {
private SectionsPagerAdapter mSectionsPagerAdapter;
private ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//GETTING THE ERROR HERE
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.container);
mViewPager.setAdapter(mSectionsPagerAdapter);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(mViewPager);
}
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
Master mView = new Master();
return mView;
case 1:
Device dView = new Device();
return dView;
default:
return null;
}
}
@Override
public int getCount() {
return 2;
}
@Override
public CharSequence getPageTitle(int position) {
switch (position) {
case 0:
return "Master";
case 1:
return "Device";
}
return null;
}
}
}
我得到一個錯誤在該行稱mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
說無法解決方法getSupportFragmentManager。
我改變了基類MainActivity從Activity
到FragmentActivity
因爲getSupportFragmentManager
是FragmentActivity
的方法,但是是好的,如果我沒有一類,沒有擴展Activity
類?我是Android新手,不確定是否可以這麼做?
哦。我查了一下,並且因爲某種原因發現它沒有。感謝您的澄清。 – Bobby
快速問題。你總是需要一個在Android項目中擴展Activity的類嗎? – Bobby
@Bobby:「我查了一下,因爲某種原因發現它沒有」 - 如果你看[FragmentActivity JavaDocs](https://developer.android.com/reference/android/support/v4/應用程序/ FragmentActivity.html),第三行開頭「'延伸Activity'」。 「你總是需要,在Android項目中的正確的擴展活動一類?」 - 「總是」是一個強烈的字眼。 :-)通常,一個Android應用程序有一個或多個活動。有一些情況下,您可能沒有,但他們都非常少見(例如,寫一些其他的應用程序插件)。 – CommonsWare