我在屏幕左侧有一个fragment
ListView
...
每当用户点击ListView
的任何项目时,我会在右侧显示fragment
。
以下是我使用交易的方式:
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
SiteDetailsFragmentActivity fragment = new SiteDetailsFragmentActivity();
fragment.setArguments(args);
fragmentTransaction.replace(R.id.fragment1, fragment);
fragmentTransaction.commit();
为什么ds transaction很慢?
答案 0 :(得分:2)
有些技巧可能有用。
如果您的片段中有很多类似网络调用的工作,请尝试在onCreateView()函数之后调用它们。即您可以使用onStart()或onResume()函数。此外,请尝试使用multiThread。
如果您有图像加载功能,请尝试降低图像质量或其尺寸。reduce image size
在替换片段时也要避免动画。
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);