Android Fragments on lower API

android, android-fragments, api

Solution

You are still using the `android.view.fragment` class, which does not exist. You have to switch to `android.support.v4.app.fragment` on older devices.

Problem

well I'm starting to understand Android Fragments but this is still confusing for me. I need a little help. As it says android fragments is supported since API level 11 but you can download "support.v4" libraries pack for lower level APIs. Well first I create new project to try fragments on API level 15. Then I did the same with API level 8 and it does not work... I imported external jar and it sees all needed import as it should... What seems to be the problem here? Here is my main class: ``` import android.support.v4.app.FragmentActivity; import android.os.Bundle; public class Fragment2Activity extends FragmentActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } } ``` My main layout XML: ``` <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <fragment android:name="com.frag.Fragment2.frag" android:id="@+id/frag" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> ``` My fragment class: ``` import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class frag extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment View v = inflater.inflate(R.layout.hello_fragment, container, false); return v; } } ``` And my fragment layout XML: ``` <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="match_parent" android:text="THIS IS FRAGMENT" android:background="@drawable/ic_launcher" /> </LinearLayout> ``` FIXED

Original source