2013-08-23 43 views
0

我有一個在佈局中具有ViewPager的活動。未找到針對ID xxx的片段(嵌套片段)的視圖

我有兩個片段顯示,每個標籤一個。

其中一個片段被設計爲承載其它片段 - 這是其膨脹fragment_customer_mainCustomerMainFragment

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/lyt_customer_main" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <FrameLayout 
     android:id="@+id/fragment_customer_content" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" /> 

</LinearLayout> 

這然後添加CustomerSearchFragment到膨脹fragment_customer_searchFrameLayout

CustomerSearchFragment還具有以下重寫切換出搜索片段的細節片段上按下一個按鈕:

java.lang.IllegalArgumentException: No view found for id 0x7f080006 (com.chrisbeckyapps.sample:id/fragment_customer_content) for fragment CustomerDetailFragment{4280b0b8 #0 id=0x7f080006}

我:

@Override 
public void onViewCreated(View view, Bundle savedInstanceState) { 
    super.onViewCreated(view, savedInstanceState); 

    Button btnSearch1 = (Button) view.findViewById(R.id.button1); 
    if (btnSearch1 != null) { 
     btnSearch1.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // This is important bit 
       Fragment customerDetailFragment = new CustomerDetailFragment(); 
       FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); 
       transaction.addToBackStack(null); 
       transaction.replace(R.id.fragment_customer_content, customerDetailFragment).commit(); 

      } 
     }); 
    } 
} 

點擊按鈕,我碰到下面的錯誤後對碎片和理解這些概念很陌生,但我被這個難住了。我最初的搜索片段直接進入尋呼機,但用細節片段代替它意味着它只是顯示在頂部,而我的研究導致這是一個更好的解決方案。

我想知道如何將搜索邏輯移動到CustomerMainFragment,但這意味着連接了很多邏輯,我認爲您可以將邏輯嵌入到片段中。

對此提出建議?

回答

3

對不起,剛發現這麼簡單的修復。

在我的onclick處理程序,我不得不從getChildFragmentManager改變getFragmentManager

+0

ü怎麼處理回按這個? –

相關問題