Vas*_*sim 12 android android-jetpack
我们如何通过按后退按钮停止从当前片段重新加载前一个片段
前任。好像我们正在从 List-fragment 移动到 Details Fragment 后按下不需要通过使用 Android Jet Pack 和导航架构再次重新加载 List-fragment
<fragment
android:id="@+id/my_nav_host_fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/navigation_graph" />
Run Code Online (Sandbox Code Playgroud)
Bad*_*ane 18
导航组件目前仅支持片段替换。因此,您将无法像使用手动片段事务那样添加 () 片段。
但是,如果您担心的是重新膨胀布局并重新获取片段的数据,则可以使用以下两种方法轻松解决。
private var view: View? = null
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
if (view == null) {
view = inflater.inflate(R.layout.fragment_list, container, false)
//...
}
return view
}
Run Code Online (Sandbox Code Playgroud)
来源:https : //twitter.com/ianhlake/status/1103522856535638016