質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

1回答

4363閲覧

ActivityとFragmentの使い分け

yka-acdc

総合スコア19

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2021/07/23 04:34

編集2021/07/25 22:35

###ActivityとFragmentの使い分けについて質問です。

3つの画面構成でアプリを作ろうとしています。

タイトル画面(入力画面へのボタン、一覧画面へのボタン)
入力画面(戻るボタンあり)
一覧画面(戻るボタンあり)

この画面構成でアプリを作成するとき、それぞれを
Activity
Activity
Activity で作成するか

Activity
Fragment
Fragment で作成するのとどちらがいいのでしょうか?

ネットで調べたところ、
Activityはメモリを多く使う、ファイルサイズが大きくなる、など書いてありました。
Fragmentはレイアウト、ロジックの使いまわしができると書いてありました。

 しかし、画面で似ている箇所はないし、たくさん画面遷移をするわけでもないので
どのように画面を作ればよいか迷っております。

ご助言お願いいたします。よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hoshi-takanori

2021/07/24 10:47

蛇足なのでここに書きますが、「Fragmentはレイアウト、ロジックの使いまわしができる」というのは、もともと Fragment が開発された動機は、Android がタブレットに対応する際に、小さな画面では別々の画面として実装されていた一覧表示と詳細表示を同じ画面に並べて表示するのは Activity では不可能だったからですが、今となっては「レイアウトやロジックを使いまわす」というのは Fragment の利用目的としてはあまり当てはまらない気がします。 現在では、画面を管理する上で Fragment が便利 (と言っても、元の Activity の設計があまりにも…) ということが分かってきたのでよく使われているってことだと思います。
yka-acdc

2021/07/25 22:39

ありがとうございます Fragmentについてもっと勉強しようと思います。
guest

回答1

0

ベストアンサー

一応個人的な意見ということでお願いします。
Fragment を使い、Activity はあくまで土台とし、3画面とも Fragment で作って1つの Activity に載せます。
なぜかは…簡単に言ってしまえば「 Fragment は Activity より新しいから」です。
Fragment は Activity での難しい所や問題点を(少しでも)良くしようとして新たに作られたものと認識しています。それが具体的にどんなモノかは説明出来ませんが、わざわざ新しいものを追加するということは、それなりに役割があるということでしょう。
「 Activity か Fragment か」と言われて『 Activity じゃないと出来ない』『 Fragment じゃ出来ない』と(実際にやってみたりして)判明しない限り、つまりどっちでも良いなら基本は Fragment かな…と思っています。

また、例えアプリ全体で一度(?)しかない画面(やその一部)であっても Fragment を用いるのは、モジュール化の点で意味があると思います。

投稿2021/07/23 12:15

編集2021/07/23 12:38
jimbe

総合スコア13209

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yka-acdc

2021/07/25 22:38

わかりやすいご回答ありがとうございます。 Fragmentを使いこなせるように学習していきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問