Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓:如何在其他活动中启用一个活动的按钮-而不使用静态?_Android - Fatal编程技术网

Android 安卓:如何在其他活动中启用一个活动的按钮-而不使用静态?

Android 安卓:如何在其他活动中启用一个活动的按钮-而不使用静态?,android,Android,我有一个登录活动,我可以给用户名和密码。如果两者都是真的,那么我只需禁用按钮并调用其他活动(MainActivity) 如果我从MainActivity按back,那么我想在LoginActivity中设置enable submit按钮,并将用户名和密码设置为空 这是我的密码 private Boolean exit = false; @Override public void onBackPressed() { if (exit) {

我有一个登录活动,我可以给用户名和密码。如果两者都是真的,那么我只需禁用按钮并调用其他活动(MainActivity)

如果我从MainActivity按back,那么我想在LoginActivity中设置enable submit按钮,并将用户名和密码设置为空

这是我的密码

private Boolean exit = false;
@Override
    public void onBackPressed() {
        if (exit)
        {

        }
        else {

            MainActivity.this.finish();
            Toast.makeText(this, "Press Back again to Exit.",
            Toast.LENGTH_SHORT).show();
            exit = true;
            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    exit = false;
                    LoginActivity.user_name.setText("");
                    LoginActivity.password.setText("");
                    LoginActivity.loginsubmit.setEnabled(true);
                }
            }, 100);

        }

    }

这里我用的是静态的。但我想在不使用static的情况下实现这一点。有人能给我一个主意吗?

无需静态,只需在LoginActivity中覆盖onResume(),如:

@Override
protected void onResume() {
    super.onResume();
    user_name.setText("");
    password.setText("");
    loginsubmit.setEnabled(true);
}

将以下代码添加到MainActivity的onBackPressed()中

Intent loginIntent= new Intent(MainActivity.this,LoginActivity.class);
loginIntent.putExtra("username", "");
loginIntent.putExtra("password", "");
loginIntent.putExtra("isSubmitEnabled", true);
loginIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(loginIntent);
Intent intent = getIntent();

if (intent != null) {
        String username = intent.getStringExtra("username");
        String password = intent.getStringExtra("password");
        boolean isSubmitEnabled = intent.getBooleanExtra("isSubmitEnabled",
                false);
    }
并将以下代码添加到LoginActivity的onCreate()中

Intent loginIntent= new Intent(MainActivity.this,LoginActivity.class);
loginIntent.putExtra("username", "");
loginIntent.putExtra("password", "");
loginIntent.putExtra("isSubmitEnabled", true);
loginIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(loginIntent);
Intent intent = getIntent();

if (intent != null) {
        String username = intent.getStringExtra("username");
        String password = intent.getStringExtra("password");
        boolean isSubmitEnabled = intent.getBooleanExtra("isSubmitEnabled",
                false);
    }
使用上述用户名、密码和IssubMinEnabled标志,您可以实现所需的

您可以使用下面的代码

user_name.setText(username);
password.setText(password);
loginsubmit.setEnabled(isSubmitEnabled );

用一些额外的意图,它会解决你的问题。我曾尝试过类似的解决方案,但没有运气。如果您能看一看并提供任何建议,我将不胜感激: