76

アクティビティ B を開始するアクティビティ A があり、インテント データが渡されます。アクティビティ B は、新しいナビゲーション アーキテクチャ コンポーネントからナビゲーション グラフをホストします。そのインテント データを startDestination フラグメントに引数として渡したいのですが、どうすればよいですか?

4

10 に答える 10

26

で修正されていました1.0.0-alpha07詳細を参照してください。

解決策は Elliot Schrock の回答に似ていますが、公式 API でラッピングされています。

手動で膨らませるNavHostFragmentか、graph

使用する

NavHostFragment.create(R.navigation.graph, args)

または

navController.setGraph(R.navigation.graph, args)

argsは、開始先に渡したいデータです。

于 2018-12-26T02:48:54.460 に答える
0

アプリの開始デスティネーションにデータを渡すことができます。まず、データを保持する Bundle を明示的に構築する必要があります。次に、次のいずれかの方法を使用して、バンドルを最初の宛先に渡します。コードから手動でグラフを設定し、それに引数を追加しapp:navGraph、xml から削除して、このコード行をアクティビティで使用できます。

navController.setGraph(R.navigation.graph, args)
于 2021-09-01T20:44:52.817 に答える