按后退按钮返回到首次启动 activity
Pressing the back button goes back to first launched activity
我有一个 activity,它在我的应用程序首次启动时启动(仅一次)。activity 让用户 select 在 topics.Then 按下完成时,我 finish() activity.This 将用户引导至 MainActivity.But 当用户按下后退按钮时它返回到首次启动的 activity(activity我使用 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();
}
}
你只需要调用 finish()
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
并在清单中的 activity 上设置 android:noHistory="true"
参见 here
我有一个 activity,它在我的应用程序首次启动时启动(仅一次)。activity 让用户 select 在 topics.Then 按下完成时,我 finish() activity.This 将用户引导至 MainActivity.But 当用户按下后退按钮时它返回到首次启动的 activity(activity我使用 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();
}
}
你只需要调用 finish()
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
并在清单中的 activity 上设置 android:noHistory="true"
参见 here