0

フラグメントのメモリへの影響については疑問があります。メモリの観点から最も最適なソリューションは次のとおりです。

1) フラグメントごとに 1 つのオブジェクトを作成し、これらのオブジェクトをトランザクション マネージャーで使用します。

MyFragment myFrag=new MyFragment();
fragmentTransaction.replace(R.id.mainPager, myFrag);

2) トランザクション マネージャーでフラグメントを直接作成し、ガベージ コレクターがこのオブジェクトを考慮に入れるようにします。つまり、次のようになります。

fragmentTransaction.replace(R.id.mainPager, new MyFragment());

メモリ リークの可能性とパフォーマンスの最適化に関して、2 つのオプションに違いはありますか。

ありがとう!

4

1 に答える 1

1
MyFragment myFrag=new MyFragment();
fragmentTransaction.replace(R.id.mainPager, myFrag);

これにより、メモリ負荷が 2 倍になることはありません。myFrag は新しいフラグメントへの単なる参照であり、フラグメントのメモリ位置のみを格納するため、オーバーロードは無視できます。

于 2012-11-30T14:42:10.693 に答える