我有一个包含多个片段的视图寻呼机但是,我遇到了一些性能问题,因为片段的onCreateView非常慢。我已经看到片段需要一些时间来创建视图,为什么会这样? 为了解决这个问题,我考虑过使用私有变量,因此每次都不能重新创建视图。代码如下所示(正如您在代码中看到的,片段的内容只是一个回收者视图):
private View iView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
if(iView != null) {
return iView;
}
iView = inflater.inflate(R.layout.fr_view, container, false);
rv = (RecyclerView) iView.findViewById(R.id.rv);
rv.setHasFixedSize(true);
final GridLayoutManager iLayoutManager = new GridLayoutManager(getActivity(), MAX_COLUMNS);
rv.setLayoutManager(iLayoutManager);
rv.setAdapter(iAdapter);
rv.setItemAnimator(new DefaultItemAnimator());
return iView;
}
这是一个很好的解决方案吗?为什么夸大观点可能会花费这么多时间?
提前致谢!