[英]Passing data back to previous Fragment with Android Navigation Components
想象一下, FragmentA
在單擊按鈕時啟動FragmentB
。 將一些參數傳遞給FragmenB
非常簡單:
val action = FragmentADirections.actionToFragmentB("some text")
findNavController().navigate(action)
但是,當用戶離開FragmentB
時,有沒有辦法將數據從FragmentB
傳遞到FragmentA
? 換句話說,當FragmentB
由於后退而被銷毀時。
在您的導航 UI xml 中:
<fragment
android:id="@+id/FragmentB"
android:name="com.example.FragmentB"
android:label="FragmentB"
tools:layout="@layout/FragmentA">
<action
android:id="@+id/action_FragmentB_to_FragmentA"
app:destination="@id/FragmentA" />
</fragment>
就像您想使用一些參數從FragmentB導航回FragmentA一樣,請使用以下命令:
findNavController().navigate(
R.id.action_FragmentB_to_FragmentA,
bundleof("key" to <your_value>) // example: 100 (Int value)
)
然后你可以使用 arguments? .getInt arguments?.getInt("key")
在你的FragmentA中接收參數,或者如果你傳遞String
可以用arguments?.getString("str_key")
等獲取它。
想象一下, FragmentA
在單擊按鈕時啟動FragmentB
。 將一些 arguments 傳遞給FragmenB
非常簡單:
val action = FragmentADirections.actionToFragmentB("some text")
findNavController().navigate(action)
但是當用戶導航離開FragmentB
時,有沒有辦法將數據從FragmentB
傳遞到FragmentA
? 換句話說,當FragmentB
因背壓而被破壞時。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.