1

フローティング ボタンを実装する最適なアーキテクチャを見つけようとしています。これは私のシナリオです:

コーディネーターレイアウト、アプリバーレイアウト、ツールバー、フローティングボタン、およびフラグメントで使用するフレームレイアウトを備えた基本アクティビティがあります。最初のフラグメントにはビュー ページャーとタブ レイアウトが含まれ、各タブは別のフラグメント (recyclerview) です。問題は、同じものを実装する多くのアクティビティを持ちたくないので、アイテムをクリックすると別のフラグメントを開きたいということです。問題は、開いている新しいフラグメントにそのフローティング ボタンを付けたくないということです。

最適なアプローチはどれですか?

  1. フローティング ボタンがあるアクティビティとないアクティビティの 2 つがある
  2. 私がどのフラグメントであるかに応じて、フローティングボタンを非表示および表示します。
  3. 他のアプローチは素晴らしいでしょう..

これのアイデアはアーキテクチャを学ぶことです。どんな提案も私にとって素晴らしいでしょう

ありがとう

4

1 に答える 1

1

あなたFloating Action Button (FAB)はフラグメントの1つに実装されていないため、2番目のフラグメントが表示されたときに非表示にする1つの方法になります。最も簡単な方法は.setVisibility(View.GONE)、2 番目の Fragment を開始するときに FAB を呼び出し、最初の Fragment に戻ったときに FAB を再度表示するように設定することです。

FAB を最初のフラグメントに追加すると、2 番目のフラグメントに切り替えると、フラグメント全体で FAB が消えるはずです。アクティビティonClickで FAB のイベントを処理する必要がある場合は、フラグメントにインターフェイスを実装します。

FAB を非表示にするためだけに 2 つのアクティビティを用意するのは大変です。FAB をフラグメントに追加すると、2 番目のフラグメントが表示されたときに FAB が表示されることを心配する必要がなくなり、追加の関数呼び出しによるパフォーマンスの低下は問題にならないはずです。毎分。

于 2016-02-23T00:35:25.560 に答える