SingleFragmentActivity.java
package com.example.ashish.ci; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; /** * Created by Ashish on 9/20/15. */ public abstract class SingleFragmentActivity extends FragmentActivity { protected abstract Fragment createFragment(); // this is an abstract method which subclasses need to implement @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fragment); FragmentManager fm = getSupportFragmentManager(); Fragment frag = fm.findFragmentById(R.id.fragment_container); if (frag == null){ frag = createFragment(); // note: earlier we had "= new CrimeFragment()" as it was a class, now we don't have new // because "createFragment()" is a method fm.beginTransaction().add(R.id.fragment_container,frag).commit(); } } }