PreferenceFragment 的向上导航问题

Up navigation issue with PreferenceFragment

我正在学习使用 Fragments 进行正确的后退导航。

目前为止一切正常,但我的 PreferenceFragment

当我的用户点击“设置”时,它会执行以下操作:

getFragmentManager().beginTransaction()
                .replace(R.id.content_frame, new SettingsFragment())
                .addToBackStack("SettingsFragment")
                .commit();

但出于某种原因 getFragmentManager().getBackStackEntryCount() returns 0 就在这个片段之后。

我错过了什么?

来自commit()描述:

Schedules a commit of this transaction. The commit does not happen immediately; it will be scheduled as work on the main thread to be done the next time that thread is ready.

这意味着如果您在提交交易后立即输入 getFragmentManager().getBackStackEntryCount(),它将显示 old 条目数,因为当前交易尚未尚未执行。