后退按钮应该直接退出

时间:2015-01-28 14:32:53

标签: android

我有两个主要的Activity,它有两个独立的XML文件,可以设计两种语言。 当有人点击主要活动ENG上的图像按钮时,它将会改变,并显示具有不同布局和语言的另一个活动。

关键是,我有Back Pressed()方法,如果用户按下两次按钮,它应退出应用程序。

现在我得到的是,当点击很多并在两个活动之间切换时,后退按钮想要回到之前的活动到最后它似乎绝对正确但我需要直接退出。我该怎么办?

public void onBackPressed() 
{

   if(count == 1)
   {
      count=0;
      finish();
   }
   else
   {
      Toast.makeText(getApplicationContext(), "Press Back again to quit.", Toast.LENGTH_SHORT).show();
      count++;
      super.onBackPressed();
   }
   return;
}

感谢名单

3 个答案:

答案 0 :(得分:0)

这是一篇关于Android应用程序退出和退出的文章。 http://android.nextapp.com/site/fx/doc/exit

但是为了您的应用目的,您的代码使用以下行:

finish();          
moveTaskToBack(true);   
System.exit(0);

答案 1 :(得分:0)

简单方案,您可以通过按下按钮从活动A开始您的活动B:

    yourButton.setOnClickListener(new OnClickListener(){

      @Override
       public void onClick(View v){

       Intent i = new Intent(YourActivity.this,YourNextActivity.class);
       startActivity(i);
       finish();//finish Your first activity


    }


  });

你唯一需要做的就是完成第一个活动,从你到达下一个活动。然后,活动B没有机会返回活动A并且应用程序完成了#34;。

答案 2 :(得分:0)

这是正确的行为,对于退出,您必须在这两项活动上调用finish()。但是,如果您使用Intent.FLAG_ACTIVITY_CLEAR_TOP标志创建第二个活动,则您可以按照说明退出。但是,您的用户无法返回活动层次结构 - 您确定要这样吗?

无论如何,这样你就可以退出了:

final Intent intent = new Intent(this, SecondActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);