1

私のアプリには、私が持っているすべてのアクティビティとさまざまなページに表示したいメニューがあります。問題は、このメニューをすべてのアクティビティに適用する方法が見つからないことと、画面の特定の部分にアクティビティをロードする方法が見つからないことです。

画面の中央には十分なサイズの長方形があり、新しい画面を開くたびに画面レイアウトが長方形の中にロードされるようにしたいと思います。

それとも、レイアウトごとに xml コードをコピーして貼り付ける必要があるのでしょうか?

4

4 に答える 4

1

Activity画面の特定の部分にロードできません。そのために(@Egorが示唆するように)を使用しますFragment

ただし、共通メニューについては、extends Activityアクティビティで共通に使用できるようにするすべてのものを含む基本クラスを作成することをお勧めします。後で、基本クラスを使用してアクティビティを拡張します。

于 2012-09-19T14:32:10.870 に答える
1

Fragmentsの使用を検討する必要があります。異なる 間でロジックを複製することなく、アプリケーションFragmentのすべてで再利用できる を定義できます。お役に立てれば。ActivityActivities

于 2012-09-19T14:29:35.743 に答える
0

これを行う場合もあります。onCreateOptionsMenu1 つは、代わりに ActionBar を使用して膨張できるカスタム メニューを作成することです。
また、メニューで別のxmlを作成し、<include>タグですべてのレイアウトxmlに追加することでこれを行うことができます。
3 番目の方法は、Fragments-Class:リンクを使用することです。

于 2012-09-19T14:30:40.797 に答える
0

あるレイアウトから次のレイアウトに xml コードをカット アンド ペーストしてはいけません。そのため、次のものが含まれています。

<include layout="@layout/header"/>

問題を考えすぎないでください。フラグメントを調べて、メニューのような再利用可能なウィジェットを作成したり、アクティビティを拡張してメニュー ロジックを抽象化したりする必要があります。

于 2012-09-19T15:39:31.027 に答える