我有一個在onCreateView
方法中有很多代碼的片段,所以我認爲將這段代碼放在外部線程中是一個好主意。現在的問題是,我在這個線程加載一個佈局,但如果我在我的活動onStart
方法來創建這個片段的新對象時,它在該行涉及到一個NullPointerException異常:無法在後臺線程中加載LayoutInflater線程
LayoutInflater inflater = getActivity().getLayoutInflater();
我覺得getActivity返回null
但爲什麼?我在onStart
方法中創建對象。那裏的活動不應該返回null
或我的沉思有什麼問題?我的代碼:
MyFragment f;
public class Tablet extends FragmentActivity
{
// onCreate(), Variables and so on...
@Override
protected void onStart()
{
super.onStart();
f = new MyFragment();
}
}
public class StundenAnsicht extends Fragment implements Runnable
{
public MyFragment()
{
Thread t = new Thread(this);
t.start();
}
@Override
public void run()
{
LayoutInflater inflater = getActivity().getLayoutInflater();
//...
}
}
你可以發佈onStart()方法和線程的代碼嗎? –
我添加了我的帖子。我也嘗試過'onResume()',但這沒有幫助。 – Cilenco