My fragment cannot be cast to android.support.v4.app.Fragment

user1447343 picture user1447343 · Mar 31, 2013 · Viewed 38.7k times · Source

I created a very simple fragment to test my app and I got the following error message:

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

My fragment is really simple...

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();
    }
}

Please help...I've been struggling with this for almost two hours..

EDIT: I'm pretty sure where I called this fragment (an activity that extends FragmentActivity) is working... just this fragment part is not working...

Answer

Egor picture Egor · Mar 31, 2013

Your SomeFrag extends

android.app.Fragment

as stated in the imports. Change the import to

android.support.v4.app.Fragment

and the cast will succeed.