2014-12-11 88 views
0
 BattleFragment battleFragment; 
    battleFragment = BattleFragment.newInstance("0"); 
    FragmentManager fm = getActivity().getSupportFragmentManager(); 

    fm.beginTransaction() 
      .replace(R.id.fragmentContainer, battleFragment) 
      .commit();  

上面的代碼是我用來創建一個新的片段並顯示它。但是,當我在片段中並嘗試獲取活動時,它將返回null。當我運行isAttached()時,它返回false。有什麼我忘記了嗎?Android活動不附加到片段

+0

'然而,當我在片段,並得到活動返回null。「究竟是什麼意思?向我們展示實際不起作用的代碼。 – Falmarri 2014-12-11 03:49:24

+0

'fragmentContainer'應該是'FrameLayout'。請檢查 – Rohit 2014-12-11 03:54:00

回答

0

嘗試下面的代碼.. 並使用FrameLayout(fragmentContainer)膨脹的片段

FragmentManager fm = getFragmentManager(); 
FragmentTransaction ft = fm.beginTransaction(); 
ft.replace(R.id.fragmentContainer, new battleFragment()); 
ft.commit(); 

public class battleFragment extends Fragment 
{ 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { 
      View view = inflater.inflate(R.layout.yourFragmentLayout,container, false); 
      //Your operations inside Fragment 
      return view; 
}