我的活动是在我的应用首次启动时启动的(仅一次)。活动让用户选择主题。然后当他们按完后,我完成()活动。这会引导用户进入MainActivity。但是当用户按下后退按钮时,它会返回到首次启动的活动(我使用finish()关闭的活动)。但我想要的是当用户按下MainActivity中的后退按钮时应用程序应该关闭(总是)。我在两个类中都覆盖了onBackPressed。
我在这两个类中的onBackPressed方法如下所示:
@Override
public void onBackPressed() {
finish();
}
MainActivity(代码的相关部分):
public class MainActivity extends AppCompatActivity
{
TopicAdapter adapter;
private AdView mAdView ;
//-------GLOBAL VARIABLES-------------------
AdRequest adRequest;
ArrayList<Sections> gameList = new ArrayList<>();
String json;
//-------------------------------------------
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SharedPreferences sharedPreferences =
getSharedPreferences("ShaPreferences", Context.MODE_PRIVATE);
SharedPreferences.Editor editor=sharedPreferences.edit();
boolean firstTime=sharedPreferences.getBoolean("first", true);
//Launch the topics selection activity for the first time
if(firstTime)
{
editor.putBoolean("first",false);
editor.commit();
Intent intent = new Intent(MainActivity.this, channels_activity.class);
intent.putExtra("isFirst",true);
startActivity(intent);
}
}
@Override
public void onBackPressed()
{
finish();
}
}
答案 0 :(得分:1)
你只需要调用finish()
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
并在清单中的活动上设置android:noHistory="true"
见here