アクティビティはこのように設計されていません。アクティビティは画面を表し、画面の一部ではありません。そのため、別の画面に含めることはできません。探しているのはフラグメントです。コードをアクティビティからフラグメントに移動する必要があります。アクティビティ内のフラグメントのライフサイクルを理解すれば、リファクタリングは非常に簡単です。
画面の切り替えに関しては、どのフラグメントが表示されているかを追跡する単純なブール値として、次のようなものを使用してビュー内のフラグメントを置き換えます。
boolean fragmentOneDisplayed = true;
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FragmentTransaction ft = activity.getFragmentManager().beginTransaction();
Fragment newFragment = fragmentOneDisplayed ? new Fragment2() : new Fragment1();
ft.replace(id of Fragment's placeholder in your Activity's layout , new Fragment);
ft.commit();
fragmentOneDisplayed = (newFragment instanceof Fragment1) ? true : false;
}
});