0

メインアクティビティとログインアクティビティの2つのアクティビティがあります。ログイン アクティビティでログインが成功すると、インテントがメイン アクティビティを開きます。問題は、戻るボタンを押すたびに、ログインアクティビティが再び開かれることです。ログイン アクティビティを再度開くのではなく、アプリを最小化したい。ユーザーがログインしている場合は、共有設定を使用してアプリにフラグを立てます。ユーザーがログインしている場合は、ブール値を true に設定します。共有設定を使用しました。次のように cekLogin() を使用します。

private boolean cekLogin() {
        boolean login;
        login = config.getBoolean("login", false);
        return login;
    }

config は私の共有設定です。

if(cekLogin){
//do not open login activity again when back button pressed <--- i don't know how to do this
}
4

5 に答える 5

1

このコードを login.java ファイルに入れます

//Assuming this is the part where you open the second activity:
Intent intent = new Intent(this, secondActivity.java);
startActivity(intent);
finish();

2 番目のアクティビティで [戻る] ボタンをクリックすると、ログイン アクティビティが終了したため、アプリケーションはホームページに戻ります。

于 2013-11-06T03:38:46.513 に答える
0

ログインが成功したら、その前に値をsharedprefに保存します。最初に、すでにsharedprefにログインしているかどうかを確認する必要があります。そうでない場合は、メインアクティビティを直接開きます。そうでない場合は、ログイン画面を開きます。

 if(isLogin)
          {
                  startActivity(new Intent(SplashScreenActivity.this, MainActivity.class));
             }
              else
              {
                  startActivity(new Intent(SplashScreenActivity.this, LoginActivity.class));

              }

ここで、isLogin は最初に false と宣言されたブール変数であり、loginsuccessfull になっている場合は sharedpref で値を true に変更します。

于 2013-11-06T04:16:49.627 に答える