2

Login.class从片段调用startActivityForResult(Login.class, 1)。如果用户登录成功,那么我将结果设置为 1,否则设置为 0。现在,如果用户Register.class从现在开始Login.class并返回到Login.class那时,在成功登录时,它总是返回结果为 1。

检查我下面的示例代码:

MyAccount.java

onCreate
Intent intLogin = new Intent(getActivity(), Login.class);
        startActivityForResult(intLogin, 1);

@Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);

        Toast.makeText(getActivity(), String.valueOf(resultCode),
                Toast.LENGTH_SHORT).show();
}

登录.java

tvRegister.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub

                Intent intRegister = new Intent(Login.this, Register.class);
                startActivity(intRegister);

                finish();
            }
        });
on successfull Login :
setResult(1)

所以,如果我不点击tvRegister它会正常工作并返回 0。如果我点击并继续新活动则它不起作用并返回 1。

请帮我解决这个问题。

4

0 回答 0