登录和注册选项卡不起作用

时间:2017-07-06 09:57:36

标签: java android android-intent

我正在尝试在同一页面上创建登录和注册标签。因此,每当我按下登录屏幕上的注册时,它会按预期更改为注册屏幕,注册屏幕也是如此。在注册屏幕上,每次我按下登录选项卡,它也会起作用。但是在登录屏幕上,每次我按下登录时,它都会进入注册屏幕,但我希望它保持在登录屏幕上。奇怪的是,每次按下注册,它都会保留在注册屏幕上。有人可以帮忙吗?任何帮助将不胜感激。

Android课程

SignUpScreen.java

 final Intent i = new Intent(SignUpScreen.this, LoginScreen.class);
    TextView b = (TextView) findViewById(R.id.text1);

    b.setOnClickListener(new View.OnClickListener() {
        public void onClick(View arg0) {

            setContentView(R.layout.login_screen);
            SignUpScreen.this.startActivity(i);
        }
    });

我的LoginScreen.java

final Intent i = new Intent(LoginScreen.this,SignUpScreen.class);
    TextView c = (TextView) findViewById(R.id.text4);

    c.setOnClickListener(new View.OnClickListener() {
        public void onClick(View arg0) {

            setContentView(R.layout.sign_up_screen);
            LoginScreen.this.startActivity(i);
        }
    });

4 个答案:

答案 0 :(得分:0)

setOnClickListener内,为什么你给了setContentView(R.layout.login_screen);     实际上只在onCreatesetContentView应该出现。

更好的完整代码将有助于指导。

答案 1 :(得分:0)

尝试使用SignUpScreen.java的上述代码

TextView b = (TextView) findViewById(R.id.text1);

b.setOnClickListener(new View.OnClickListener() {
    public void onClick(View arg0) {
        Intent i = new Intent(SignUpScreen.this, LoginScreen.class);
        startActivity(i);
    }
});

和LoginScreen.java

TextView c = (TextView) findViewById(R.id.text4);

c.setOnClickListener(new View.OnClickListener() {
    public void onClick(View arg0) {

        Intent i = new Intent(LoginScreen.this,SignUpScreen.class);
        startActivity(i);
    }
});

答案 2 :(得分:0)

您必须在onCreate方法中调用setContentView并执行以下操作:

protected void onCreate(Bundle savedInstanceState){

   if(forLoginScreen) {
     setContentView(R.layout.login_screen);
   }else {
    setContentView(R.layout.sign_up_screen);
   }

}

答案 3 :(得分:0)

您只需创建两个用于登录的活动,另一个用于注册,在登录活动中您必须提供登录表单,两个按钮用于登录,一个用于注册。 并将登录活动作为启动器活动。单击注册按钮时,只需使用intent

调用注册活动

公共类LoginActivity扩展了Activity {

private EditText mEmail;
private EditText mPassword;

Button btn_login,btn_signup;


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


    btn_login.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

                uid = mEmailView.getText().toString();
                pwd = mPasswordView.getText().toString();

                if(uid.equalsIgnoreCase("")){
                    mEmailView.setError("Please enter user id");
                }else if(pwd.equalsIgnoreCase("")){
                    mPasswordView.setError("Please enter password");
                }else  {
                    //do whaterver you want to do after login
                }

        }
    });

            btn_signup.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent i=new Intent(LoginActivity.this,Signup.class);
                    startActivity(i);
        }
    });
}

}

并在注册页面中,当您注册时,用户使用intent

成功将其重定向到登录页面

Intent i = new Intent(Signup.this,LoginActivity.class);                         startActivity(ⅰ);

或者您可以将他重定向到其他活动

相关问题