登录完成后恢复点击事件

时间:2016-11-11 03:41:31

标签: java android design-patterns

我正在开发一个登录不是强制性的应用程序,但是在侧边应用程序中有一些应用程序要求用户登录的事件。登录完成后,我想恢复该过程。例如,如果用户未登录并点击"喜欢"按钮,app将用户重定向到登录活动。现在我希望在登录完成后#34;喜欢"点击也将被执行。除了喜欢之外,还有更多这样的类型按钮。请帮忙......

2 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点(片段,静态字段分享状态,并执行其他等操作。)但在我看来,使用flagstartActivityForResult是最好的事情在这种情况下并确保可重用性,您可以使用多个键映射一组事件,并在收到与事件关联的正确密钥后调用这些事件而不是分离的标志

提示:通过intents发送。

我会在这里使用一个标志,例如,如果您希望在用户登录后执行此类操作。

在您的 CurrentActivity 中,使用like按钮,设置实例static boolean isValid=false;,然后使用:

Intent i = new Intent(this, Login.class);
startActivityForResult(i, 1);

Login.class

 //perform login
    Intent i = new Intent();
    //reset isValid to true
    setResult(Activity.RESULT_OK,i);
    finish();

CurrentActivity.class:

//re-trigger the click event 
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    if (requestCode == 1 && isValid) {
        if(resultCode == Activity.RESULT_OK){
            //like
        }

    }
}

答案 1 :(得分:0)

您可以将登录屏幕用作DialogFragment,这样它就可以充当Dialog,通过这种方式您可以使用Activity中的回调方法处理上一个点击事件。 / p>