我对片段的内存含义存有疑问。什么是最佳的内存解决方案:
1)为每个片段创建一个对象,并在事务管理器中使用这些对象。
MyFragment myFrag=new MyFragment();
fragmentTransaction.replace(R.id.mainPager, myFrag);
2)直接在事务管理器中创建片段,并让垃圾收集器考虑到这个对象,我的意思是这样的:
fragmentTransaction.replace(R.id.mainPager, new MyFragment());
在可能的内存泄漏和性能优化方面,两个选项之间是否存在任何差异。
谢谢!
答案 0 :(得分:1)
MyFragment myFrag=new MyFragment();
fragmentTransaction.replace(R.id.mainPager, myFrag);
这不会使内存负载加倍。 myFrag只是对新片段的引用,它只存储片段的内存位置,因此重载可以忽略不计。