Android登录应用 - 显示电子邮件

时间:2016-02-03 08:24:51

标签: java android login

使用简单登录示例。成功登录后,在Hello消息后显示用户的电子邮件。

我的问题是如何向Inner Activity

显示电子邮件

代码是

LoginAcitvity

public class LoginActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        final EditText email = (EditText) findViewById(R.id.emailText);
        final EditText password = (EditText) findViewById(R.id.passwordText);

        final Button loginButton = (Button) findViewById(R.id.loginButton);

        loginButton.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                if (authenticate(email.getText().toString(), password.getText().toString())) {

                    Intent innerIntent = new Intent(LoginActivity.this,
                            InnerActivity.class);

                    startActivity(innerIntent);


                } else {
                    // uname.setText("");
                    password.setText("");
                }
            }
        });

    }


    private boolean authenticate(String email, String password) {
        // Return random value. Later we will contact the server here

        if(email.equals("foo@bar.123") && password.equals("hello")) {
            return true;
        }
        if(email.equals("bar@foo.123") && password.equals("world")) {
            return true;
        }
        return false;
    }
}

InnerAcitvity

public class InnerActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_inner);

    }
}

3 个答案:

答案 0 :(得分:3)

使用意图。 在LoginActivity的 loginButton.setOnClickListener中写下

Intent innerIntent = new Intent(LoginActivity.this,InnerActivity.class);
innerIntent.putExtra("email",email.getText().toString());
startActivity(innerIntent);

InnerActivity.java

String email=getIntent().getExtras().getString("email");
txtView.setText(email);

在继续讨论其他主题之前,我将建议您了解Intent的实际内容及其丰富的功能。 请参阅thisthis

答案 1 :(得分:1)

通过Intent To Innner活动发送电子邮件,如下所示。

Intent innerIntent = new Intent(LoginActivity.this,
                        InnerActivity.class);
intent.putExtra("EMAIL",email.getText().toString());
startActivity(innerIntent);

On Inner Activity获取Intent数据。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_inner);

    String email=getIntent().getExtras().getString("Email");
    mTextview.setText(email);

}

答案 2 :(得分:0)

您可以在 LoginActivity 中添加公共静态,并从InnerActivity中调用它

    public class LoginActivity extends AppCompatActivity {
    public static String loginEmail = "";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        final EditText email = (EditText) findViewById(R.id.emailText);
        final EditText password = (EditText) findViewById(R.id.passwordText);

        final Button loginButton = (Button) findViewById(R.id.loginButton);

        loginButton.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                if (authenticate(email.getText().toString(), password.getText()
                        .toString())) {

                    Intent innerIntent = new Intent(LoginActivity.this,
                            InnerActivity.class);

                    startActivity(innerIntent);

                } else {
                    // uname.setText("");
                    password.setText("");
                }
            }
        });

    }

    private boolean authenticate(String email, String password) {
        // Return random value. Later we will contact the server here

        if (email.equals("foo@bar.123") && password.equals("hello")) {
            loginEmail = email;
            return true;
        }
        if (email.equals("bar@foo.123") && password.equals("world")) {
            loginEmail = email;
            return true;
        }
        return false;
    }
}

并将其称为 InnerActivity

String email = LoginActivity.loginEmail;