[解決済み] Android Navigation Architecture Component - 現在表示されているフラグメントを取得する
2022-07-10 09:30:49
質問
ナビゲーションコンポーネントを試す前に、私は手動でフラグメントトランザクションを行い、現在のフラグメントを取得するためにフラグメントタグを使用していました。
val fragment:MyFragment = supportFragmentManager.findFragmentByTag(tag):MyFragment
さて、私のメインのアクティビティレイアウトでは、次のようなものがあります。
<fragment
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/nav_host"
app:navGraph= "@navigation/nav_item"
android:name="androidx.navigation.fragment.NavHostFragment"
app:defaultNavHost= "true"
/>
ナビゲーションコンポーネントで、現在表示されているフラグメントを取得するにはどうすればよいですか? すること
supportFragmentManager.findFragmentById(R.id.nav_host)
は
NavHostFragment
で、表示されている'MyFragment`を取得したい。
ありがとうございます。
どのように解決するのですか?
今のところ、なんとか方法を発見することができました。
NavHostFragment navHostFragment = supportFragmentManager.findFragmentById(R.id.nav_host);
navHostFragment.getChildFragmentManager().getFragments().get(0);
もちろん、最初の断片であることはご存知でしょう。私はまだこれを使用しない方法を調査しています。ベストな方法ではないことは承知していますが、とりあえずはこれでいいと思います。
関連
-
[解決済み] Androidで画面の大きさをピクセル単位で取得する方法
-
[解決済み] Androidで現在の時刻と日付を取得する方法
-
[解決済み] Androidで'Context'を取得する静的な方法?
-
[解決済み] ViewPagerでFragmentが表示されるタイミングを決定する方法
-
[解決済み] 新しいAndroid Fragmentをインスタンス化するためのベストプラクティス
-
[解決済み] 開発者コンソールでのベータ版/アルファ版テストについての説明が必要です。
-
[解決済み] BackStackでFragment Animationを逆再生するには?
-
[解決済み] AndroidでNode.Jsを動作させる
-
[解決済み] AndroidでJSONオブジェクトをRequestで送信するには?
-
[解決済み] PreferenceFragmentCompatはpreferenceThemeが設定されている必要があります。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] BottomSheetDialogFragmentの状態をexpandedに設定する。
-
[解決済み] Android - タイトルバーに戻るボタンが表示される
-
[解決済み] アンドロイドのスプラッシュスクリーンのサイズは、ldpi、mdpi、hdpi、xhdpiのディスプレイのためのものですか?- 例:1024X768ピクセル(ldpi)。
-
[解決済み] AndroidのimageviewがmaxWidthを無視する?
-
[解決済み] カスタムレイアウトとEditTextを持つAlertDialog.Builderは、ビューにアクセスすることができません。
-
[解決済み] 制約条件 レイアウト 垂直中央揃え
-
[解決済み] Fragment ActionBarCompatの内部からgetSupportActionBarを取得する。
-
[解決済み] 複数のローダーを持つLoaderManager: 正しいカーソルローダーを取得する方法
-
[解決済み] Genymotion、Mavericksで「Unable to load VirtualBox engine. VBoxは正しくセットアップされています。
-
[解決済み] PreferenceFragmentCompatはpreferenceThemeが設定されている必要があります。