Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。7,336件21お世話になっております。みなさんはこのような場合ActivityとFragmentを使い分けをどのようにしてるのか教えて頂きたく、質問させて頂きました。・1つのActivityにいくつのFragmentを定義しますか?私は1つのFragmentにlayoutしActivityに配置してますので1:1の関係になっています。・ダウンロードなどのネットワーク処理はActivityで行いますか?Fragmentで行いますか?私はFragmentはあくまでUIのみにしているのでActivityで通信をし結果をFragmentに返しています。Fragmentとの処理にすこし疑問を感じています。Activity等の画面遷移はどちらが発火しますか?私はActivityからstartActivityをし、遷移しています。・ToolbarやActionBarの定義はどちらに行いますか?私はToolbarはActivityのlayoutに入れているのですが、やはりFragmentで定義するのがいいのでしょうか?よろしくお願い致します。票2あくまでも私の個人的な意見として記載させていただきます。作成・公開(GPL)しているアプリは1つで、規模は14activities,15Fragmentsで、インターネットからの情報取得およびDao経由でSQLiteへ保存し、表示するというの貧弱な経験から導き出しているものです。概略FragmentはActivityに乗っているもので、Activityの処理を委譲されているものという認識であるため、ActivityはFragmentを調定するものという認識です。・1つのActivityにいくつのFragmentを定義しますか?1つのActivityに1つの表示領域を設けて、4つほどのFragmentをreplaceしています。・ダウンロードなどのネットワーク処理はActivityで行いますか?Fragmentで行いますか?FragmentはAsyncTaskを利用して自分自身でデータを拾ってきます。FragmentはActivity上に乗っているため、Fragment上でデータを取りに行ったとしてもActivity上での処理と解釈でき、なにより、処理を内包するため、役割の分割につながると考えています。画面遷移についてはFragment上に配置したレイアウトから発生するため、ActivityにFragmentから利用されるHandlerを経由してstartActivity等を実行しています。・ToolbarやActionBarの定義はどちらに行いますか?Toolbarの定義はActivity側にありますが、メニューやタイトル等の設定はFragmentで行います。理由はNavigationDrawerを使用するためです。経緯Activityのみで実装していましたが、遷移が複雑になるにつれ、Activityの役割が増えてしまったため、1つのActivity上で複数のFragmentへreplaceする対応をしました。ものがあり、見た目がすっきりするという理由で、Fragmentを組み合わせて実装しました。API21でdeprecatedとなりました。開発版はNavigationDrawerを使用して関連するFragmentを1つのActivityで管理するように移行中です。気になって、関連する話題を探したところ、fkmさんの紹介しているスライドと同じような記載を見つけました。私の意見よりも以下を参照していただいたほうがよいかと思われます。個の銅バッジ回答ありがとうございます。1つのActivity上で複数のFragementへreplaceするアプローチをとってらっしゃるのですね。リンク先は一度確認していたのですが、もう一度理解のために参照してみます。個の銅バッジさっそくのコメントありがとうございます。あんざいさんのスライド、とても参考になりました。・CustomViewGroupの中にCustomViewもしくは通常のViewを配置し、このViewの管理をCustomViewGroupが行う。・私の認識ではFragmentはViewを管理し、ActivityはFragmentを管理するものであるとの認識だったのですが、このスライドはFragmentはViewを管理せず、Viewを管理するのはActivity自身であるとの意味でしょうか?サンプルだとFragmentはネットワーク処理を行うクラスのようです。サンプルコードもActivityが一部のUIのイベントリスナやインスタンスを管理しているようです。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。2Volleyのリクエストが行われない。Activity?1BackStackに追加しないとなぜかFragmentの背景が透過されてしまう。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。