0

写真を撮るためのアプリケーションを作成しました。アプリケーションはタブベースです。1 つのタブはカメラ用です。レイアウトがあります。「カメラレイアウト」と呼びましょう。ユーザーが「カメラ レイアウト」から「写真」ボタンを押した後、同じタブの内容が「写真プレビュー」レイアウトに変更されます。「setContentView」を使用して行います。問題は、「setContentView」がレイアウトを完全に変更することです! 次にユーザーが「カメラ」タブを開くときは、古き良き「カメラ レイアウト」を見せたいと思います。どうやってするの?

PS「写真のプレビュー」にはありません。また、(特定の理由により)「写真を保存して古いコンテンツを元に戻す」ボタンもありません。

4

1 に答える 1

0

タブはどこに含まれていますか? フラグメントを使用していますか?いくつかの方法があります。

// レイアウトの場合 ->

A) 「表示」と「非表示」の間で変更できる 2 つの子レイアウトを持つ FrameLayout の親である二重レイアウトを持っています。ユーザーがボタンをクリックすると、CameraLayout が非表示になり、PhotoPreview が表示されます。その後、CameraLayout に対してはその逆です。

B) プレビューを表示するダイアログとして PhotoPreview を実装します。画面の大部分 (カスタマイズによっては画面全体) を占め、他の画面レイアウトを変更しません。

// フラグメントの場合 ->

A)ユーザーがCameraLayoutに戻ったときに、実際にフラグメントを再作成します(タブ付きのフラグメント化されたアプリを意味すると想定しています)。

B) CameraLayout と PhotoPreview を切り替えて、2 つの異なる状態の間でフラグメントを置き換えます。

于 2013-10-08T21:31:07.163 に答える