2013-03-31 3 views
22

ho creato un semplice frammento di mettere alla prova la mia app e ho ottenuto il seguente messaggio di errore:mio frammento non può essere lanciato a android.support.v4.app.Fragment

03-31 16:04:39.834: E/AndroidRuntime(7860): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.team3.domore/com.team3.domore.TabActivity}: java.lang.ClassCastException: com.team3.domore.SomeFrag cannot be cast to android.support.v4.app.Fragment 

mio frammento è molto semplice .. .

import android.app.Fragment; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 

public class SomeFrag extends Fragment { 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     return inflater.inflate(R.layout.alarm_frag, container, false); 
    } 

    @Override 
    public void onStart() { 
     super.onStart(); 
    } 
} 

Si prega di aiuto ... ho lottato con questo per quasi due ore ..

EDIT: sono abbastanza sicuro in cui ho chiamato questo frammento (un'attività che si estende FragmentActivity) è lavoro ... proprio questa parte frammento non funziona ...

risposta

64

tuo SomeFrag estende

android.app.Fragment 

come indicato nelle importazioni. Cambiare l'importazione in

android.support.v4.app.Fragment 

e il cast avrà esito positivo.

+1

Strano, so che questo post era vecchio. Ma per una versione più recente di Android Studio era il contrario. Ho cambiato android.support.v4.app.Fragment in android.app.Fragment – Aaron

+0

Ho avuto lo stesso problema ma, come ho detto, ho rimosso l'errore ma la mia app ha dichiarato di bloccarsi per qualche motivo .. – Rishav

16

provare a cambiare a seguito di importazione

import android.app.Fragment 

al import android.support.v4.app.Fragment