使用与活动相同的完成功能处理碎片中的后压



我需要帮助来详细描述片段。我有5个片段(在一个活动中(,如:

[1] ,[2],[3],[4],[5]

我从1->2,然后2->3等等。用户能够像3->2,一切都很好。

当我到达第5片段时,在第5片段上;提交";按钮,我想当我点击提交时,我重定向到片段1,然后如果用户点击返回,就不要再转到第5位。喜欢用户完成一个圆圈,并在完成一个圆后返回。

就像我们在与";完成";。

您使用Android导航还是仅使用FragmentManager添加片段?在FragmentManager的情况下,如果你想在用户按下第一个片段上的后退按钮时完成活动,那么在你的活动类中,只需执行:

override fun onBackPressed() {
if (supportFragmentManager.fragments.last() is FirstFragment) {
finish()
} else {
super.onBackPressed()
}
}

这应该是等效的java,但在尝试之前进行修改,因为我的java有点生疏:

@Override
public void onBackPressed() {
FragmentManager fm = getSupportFragmentManager();
int fragmentsCount = fm.getFragments().size();
if (fragmentsCount > 0 &&
fm.getFragments().get(fragmentsCount - 1) instanceof FirstFragment) {
finish();
} else {
super.onBackPressed();
}
}

相关内容

  • 没有找到相关文章

最新更新