質問: 分からないこと ------- Fragmentを用いた遷移でも、Activity.javaはアプリの1つの画面に対して1つ必要という情報をネットで見たのですが、その意味がよく分かりませんでしたので、解説が欲しく質問させて頂きました。 Androidアプリを作成していて、今まではbuttonを用いたActivity間の遷移をさせていました。 しかし、bottomnavigationviewを用いたFragment間での遷移に変更しました。つまり、MainAcitivity.java一つと*Fragment.javaが3つという状態です。 そこで今まで用いていたActivity内にあったデータ受け渡し等の機能やfindviewなどをFragmentに移そうと考えてネットで調べていたら、上記の情報がありました。 Fragment.javaを用いて画面遷移する場合Activity.javaは必要ないのではと思い、上記の説明の意味がよく分かりませんでした。 ![](https://i.stack.imgur.com/nJLMA.jpg) 参考にしたサイト --------
回答: > > Fragment.javaを用いて画面遷移する場合Activity.javaは必要ないのではと思い、上記の説明の意味がよく分かりませんでした。 > > > Fragmentで画面遷移をするのに、「Activityは**使う必要はない**」ですが、「Activityは**作る必要はない**」ではありません。 Activityは、他のアプリケーションから呼び出されるために必要です。 大抵のアプリケーションは、ホームアプリから起動されるわけで、そのような意味では(ホームアプリから呼び出されるために)Activityは必要になります。 通常、Activityを作り、Activityに作ったViewを割り当てます。 Activityを使った画面遷移というのは、前のActivity(当然割り当てたViewも含む)を削除し、新しいActivity(並びにView)を作り直す、言い直すと、「Activityを入れ替える」事になります。 実にシンプルですが、シンプル故に細かい制御ができません。 そこで、Activityで行っていた「入れ替え」を、View単位で行えるようにしたのがFragmentです。 View単位ですので、個々のViewにそれぞれ別のFragmentを割り当てることもできますし、複数あるView(に割り当てられているFragment)のうち一つのみを入れ替えることもできます。 Fragmentの説明を簡単に説明しましたが、いかがですか。