2014-07-21 85 views
0

我在應用程序中使用了片段。當我將FragmentActivity類的構造函數傳遞給片段時,它會給出一個錯誤,即「類型不匹配:無法從ReadFragment轉換爲片段」。在此先感謝您的幫助無法從FragmentActivity轉換爲片段

ReadFragment.java

public class ReadFragment extends FragmentActivity { 

public ReadFragment(){ 

} 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.read_layout); 
} 
} 

MainActivity.java

...... 
    Fragment fragment = null; 

    fragment = new ReadFragment(); 
...... 
} 
+0

FragmentActivity是一個活動,不擴展片段,因此它不能轉換爲片段! – hister

回答

0

FragmentActivity不是一個片段,因而不能被分配到類型片段的變量。您的ReadFragment應該擴展Fragment。我建議你通過this教程來學習片段的基礎知識,並且可能會在Web上搜索Java教程,這是Java的基礎知識。

public class ReadFragment extends Fragment { 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 

     //For more info how to implement this i highly suggest you read the tutorial. 
    } 

    ... 
} 

當擴展Fragment時,您還需要重寫OnCreateView。

0

我猜你想做什麼或者是:

public class ReadFragment extends Fragment { 

或(和這不應該工作,因爲你不能從一個轉換爲另一個):

fragment_activity = new ReadFragment(); 
fragment = (fragment) fragment_activity; 

現在你可以選擇

+0

爲什麼你會將TypeCast繼承Fragment片段的對象?這對我來說毫無意義。 – Rawa

+0

你不能從FragmentActivity投射到片段! – PKlumpp

+0

對不起,我看錯了,儘管你希望他在將FragmentActivity改爲Fragment之後進行投射。 – Rawa

相關問題