それをしてもいいですか?
もちろん!ただし、その環境では「完全な Swing 新人」のような問題ではないのと同様に、「完全な Android 新人」のような問題とは言いません。
それ、どうやったら出来るの?
いくつかの可能なアプローチがあります。最も簡単な解決策は、UI 全体を定義するレイアウト リソース ファイルを定義するFrameLayoutことです。次に、実行時にそのレイアウトを使用するときに、その中に何かを入れて「空白を埋める」ことになりますFrameLayout。
各「画面/ビュー」を にしActivityたい場合は、前述のレイアウト ファイルを で使用し、setContentView()「一部の空白」が何であれ、手動で膨張 (または Java で直接インスタンス化) します。膨らませたもので「空白を埋める」ように要求addView()します。FrameLayout必要に応じて、ほとんどのロジックを基本クラスにgimmeTheBlanksPlease()まとめて、FrameLayout.
各「画面/ビュー」を にしFragmentたい場合は、前述のレイアウト ファイルを で使用し、onCreateView()「一部の空白」が何であれ、手動で膨張 (または Java で直接インスタンス化) します。FrameLayout繰り返しますが、そのようなものをviaに注ぐとaddView()、このコードのほとんどは抽象基底クラスで実装できます。
より複雑なソリューション (例: custom ViewGroup) もあります。
唯一の簡単な解決策は、「この UI フローの 90% の共通部分」が 1 つのレイアウト ファイルで定義できる場合、<include>タグを使用してレイアウトを構成することです。「画面/ビュー」ごとのレイアウトに含まれ、実行時に使用される、共通の要素を持つ 1 つの共通のレイアウトがあります。繰り返しになりますが、おそらく抽象的なベースを持っているActivityかFragment、共通のものについて知っているでしょう。ただし、XML と配置がどのように機能したかという理由だけで、"90%" が大量のレイアウト ファイルに分割されてしまうと、これは面倒です。