我用以下代码替换了一个片段。为什么提交后没有立即调用onCreateView
?我要在这之后执行Async任务,但是由于尚未运行OnCreateView
方法,因此尚未解析ResultListFragment中的引用,因此我得到了nullpointerexception。为什么?我该如何解决?
if (mResultListFragment == null) {
mResultListFragment = new ResultListFragment<Question>();
}
getFragmentManager()
.beginTransaction()
.addToBackStack("result")
.replace(R.id.someContainer, mResultListFragment)
.commit();
// AsyncTask stuff here
最佳答案
调用FragmentManager
的executePendingTransaction
阻止主线程,直到您的片段已提交为止,而无需调用此提交即可异步完成