当前位置: 首页 > 知识库问答 >
问题:

防止活动返回登录和注销按钮

龙弘盛
2023-03-14

我有一个名为logIn的活动,它会导致一个名为users not的活动。我希望防止users活动返回到logIn活动,因此a在users活动中添加了以下代码:

@Override
public void onBackPressed() {
    moveTaskToBack(true);
}

它工作得很好,但现在我希望用户能够注销,这样他就可以通过单击按钮返回到登录活动,我在用户活动中添加了一个按钮,并添加了onClickListener,如下所示:

LogOut.setOnClickListener(new View.OnClickListener(){
   @Override
            public void onClick(View view) {
                startActivity(new Intent(Users.this, Login.class));

            }
        });

但是,当我添加onClickListener时,当我单击登录按钮时,应用程序崩溃,而不进入用户活动。

有什么建议吗?我尝试在登录活动结束时使用finish(),但即使没有侦听器,应用程序也会崩溃。

编辑:

我错过了

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

解决的问题

共有2个答案

韩弘壮
2023-03-14

在登录活动中onLoginClick:

startActivity(usersActivity);
finish();

在UsersActivity onLogoutClick中:

startActivity(loginActivity);
finish();
丌官嘉福
2023-03-14

以这样一种方式来做,这样你就不会完成登录活动。你不是在破坏它,而是把它放在幕后。所以当你想回到登录页面时,写下这段代码-

final Button button = (Button) findViewById(R.id.logOut);
     button.setOnClickListener(new View.OnClickListener() {
         public void onClick(View v) {
            startActivity(new Intent(Users.this, logIn.class));
              finish();
         }
     });

所以现在当你销毁它时,登录页面应该会出现..

 类似资料:
  • 我通过以下代码阻止返回登录活动: 当用户处于第二个活动上并且他按下主页按钮,应用程序进入后台,当他恢复它时,第二个活动出现 - 没关系。但是,当用户在第二个活动中按后退按钮时,应用程序进入后台,当他重新喜欢它时 - 登录活动再次创建并且它处于前期。 如何防止再次创建登录活动?或者,我不应该完成登录活动,而是应该检查用户是否已登录-如果是,我应该显示第二个活动? 清单:

  • 用户登录 在用户登录App账号时调用以下登录方法,从而保证用户是以登录身份进行咨询,是区分会话的用户的唯一标识; 游客咨询不需要调用小能login方法,小能会自动生成一个游客身份标识,在客服端游客身份的用户名显示为:“游客+4位数字”。 App完全退出(被杀掉进程), 再次进入时, 在SDK初始化之后, 如果App本身账号是登录用户, 需要重新调用小能SDK登陆接口,同步用户身份【大多是针对App

  • 登录与注销 用户登录 在App登录的地方,调用小能的login方法,目的是传递账号信息,为客服端显示用户信息。在App被杀死之后,sdk会保持用户的登录状态,不需要再次调用登录的方法。 uid作为用户的唯一标识需要保证唯一性,username可根据需要传入手机号、昵称等信息 /** * @param uid 必填,登录用户的id, 只能输入数字、英文字母和"@._—"四种字符,长度小于等于60位

  • 嗨,我正在创建使用 REST API endpoint与服务器端通信的移动本机应用程序。 我以前有开发本机客户端的经验,但我将简单的令牌(随机生成的字符串)存储在存储用户信息的同一表中的数据库中。所以它就像浏览器中使用的会话,但每个请求的标头中都有令牌,而不是 cookie。 最近我发现了JWT令牌。这似乎是保护私有endpoint的好方法。您可以从移动客户端请求令牌,前提是您通过登录并获得生成的

  • 我是新来的Laravel 5,并试图使一个简单的身份验证页面。我的问题是我可以在我点击注销链接后正确注销,但是如果我点击浏览器的后退按钮,仍然可以看到页面的内容,实际上不应该看到关于我的授权中间件过程。我读到我可以通过禁用缓存来防止这种情况,但不认为这是最好的方法,所以我如何才能以更好的方式做到这一点?简单地说,我的注销路线是 注销功能为:

  • 我正在制作一个应用程序,其中有一个“MainActivity.class”,它有一个按钮“Edit profile”,可以引导另一个活动,称为“Editprofile.class”。它(MainActivity)还有一个文本视图,显示一个字符串(名称)。 Editprofile.class接受来自用户的字符串,按下添加按钮后,新的字符串会更新到数据库中,替换以前的字符串。现在,当更新后,用户通过后