在活动或片段关闭后执行一项功能

时间:2015-12-07 18:54:22

标签: android android-fragments navigation-drawer

我的MainActivity包含导航抽屉。 在这个抽屉里有一个名为"登录"的项目。 另外,我创建了一个静态变量:



public static boolean SIGNED = false;




目的是在用户点击"登录"后,他将获得一个活动(或片段),他将把他的凭证插入其中。然后,如果凭证正确 - 导航抽屉将包含"退出"相反,它会打开一些其他活动/片段(仅限用户使用。请说" HomeFragment")。

我的登录活动包含:



           case R.id.bSign_in:
                signIn();
                finish();
                break;




但当然我无法使用此代码解决问题(在MainActivity中):



            case R.id.nav_sign_in:
                startActivity(new Intent(this, LoginActivity.class));
                if (SIGNED)
                    fragment = new HomeFragment();
                return true;




我能做些什么来解决它? 如果活动和片段之间的解决方案不同 - 我对这两者都感兴趣。

1 个答案:

答案 0 :(得分:2)

在Activity返回后执行某些逻辑的标准方法是在活动返回后使用startActivityForResult - 执行onActivityResult,执行代码。

如果是片段,您可以在关闭时直接调用您的Activity(拥有此片段的活动)功能(即用户按下登录按钮)。