我正在使用一个具有一个活动和多个片段的Android应用程序,因此我添加了一个锁定功能,如果在十分钟内没有交互,则锁定用户。我这样做是通过创建一个扩展AppCompatActivity的活动,并在没有与应用程序交互的情况下导航到lockScreenActivity。现在应用程序从Web套接字解锁后,我想导航回导航前保留当前片段的活动。我应该怎么做呢。
搜索堆栈溢出表明我这样做:
startActivity(new Intent(this,MainActivity.class));
这对我不起作用,在LockScreenActivity上调用finish也不起作用。
感谢。
答案 0 :(得分:1)
如果您从Fragment
转到MainActivity
,则应该执行此操作
Intent intent = new Intent(getActivity(), mFragmentFavorite.class);
startActivity(intent);
但如果您从Activity
转到Fragment
,请执行此操作
Intent intent = new Intent(this, mFragmentFavorite.class);
startActivity(intent);
如果你正在finish()
前往lockActivity
并在lockActivity
内完成另一项任务,那么堆栈中没有活动可以膨胀,也许这就是为什么不能为你工作< / p>
答案 1 :(得分:0)
如果要从“活动”返回到“片段”。 这非常简单,只需在您的活动中覆盖onBackPressed()并在需要的位置调用onBackPressed。请参阅下面的代码,这将使您的概念更加清晰。
@Override
public void onBackPressed() {
super.onBackPressed();
}
//now call onBackPressed to navigate from activity to fragment
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});