Android 3.0以前版本使用Fragment提示getFragmentManager is undefined

来源:互联网 发布:人工智能豆瓣评分 编辑:程序博客网 时间:2024/06/06 00:30

最近学习了Fragment的一些知识,于是自己作了一些试验,发现这东西还真不错,但用的时候有一个问题,我们在使用

getFragmentManager().beginTransaction().replace(R.id.main_layout, fragment1).commit(); 

发现getFragmentManager() 没有定义而使用不了。

即便是我们已经加载android-support-v4.jar,然后使用getSupportFragmentManager()发现问题依旧。

到这里依旧解决不了问题,因为我们的activity继承的是Activity所以这个方法是不存在,因此我们要继承FragmentActivity问题就可以解决了。

所以我们的办法就是:

public class MainActivity extends FragmentActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Display display = getWindowManager().getDefaultDisplay();if (display.getWidth() > display.getHeight()) {Fragment1 fragment1 = new Fragment1();getSupportFragmentManager().beginTransaction().replace(R.id.main_layout, fragment1).commit();} else {Fragment2 fragment2 = new Fragment2();getSupportFragmentManager().beginTransaction().replace(R.id.main_layout, fragment2).commit();}}}



(完)

原创粉丝点击