Fragmentクラスを作ったら、次はActivityに貼付けてみましょう。
まずはMainActivityのonCreate()メソッドを下記のようにします。android-support-v4を使った例なので、FragmentActivityになっています。
public class MainActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.replace(R.id.main, TitleFragment.newInstance());
transaction.commit();
}
}
}
setContentView()で設定しているレイアウトは下記の通りです。idをR.id.mainにしています。FrameLayoutの方がホントはいいのかもしれません。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/main">
</RelativeLayout>
savedInstanceState==nullの時のみ、R.id.mainの部分にFragmentを貼付ける(=replaceする)処理を行います。Fragmentの貼付け/張り替えはFragmentManager経由で行います。android-support-v4を使っている場合はgetSupportFragmentManager()メソッドで、API Level 11以上のActivityの場合はgetFragmentManager()メソッドでFragmentManagerインスタンスを取得します。
Fragmentのreplace等はトランザクションで行います。FragmentManagerのbeginTransaction()メソッドでtransactionインスタンスを取得します。replaceメソッドで「このidに、このFragmentで置き換え」を指示し、commit()メソッドでコミットします。
これで実行した際、ちゃんとタイトル画面のレイアウトが表示されたらOKです。