Android应用:BACK按钮的作用类似HOME键---问题
我曾尝试在其他问题后退按钮行为像Home键的描述使用下面的代码,但它不工作:Android应用:BACK按钮的作用类似HOME键---问题
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
我没有要点评论别人的问题,因为我已经打开了这个问题。
第一个问题:HOME按钮正在让应用程序退出。第一次复位智能手机后,HOME按钮将App置于后台(不退出)
第二个问题:我试图让BACK按钮像上面的代码一样充当HOME按钮,但是BACK按钮仅被禁用。
。在第一次成功登录和Twitter身份验证之后,当用户单击BACK按钮或HOME按钮(Android按钮)时,应用程序必须保持在后台(不退出)。
我在做什么错?
感谢
的应用程序: http://play.google.com/store/apps/details?id=com.xranky
固定问题2:下面@zilk代码
固定问题1:你必须插入下面的代码上的登录/启动屏幕
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
// Activity was brought to front and not created,
// Thus finishing this will get us to the last viewed activity
finish();
return;
}
// Regular activity creation code...
}
来源: How to return to the latest launched activity when re-launching application after pressing HOME?
对此使用下面的代码。
public void onBackPressed() {
super.onBackPressed();
}
下面的代码没有完成你的活动,但是你的应用程序需要像home按钮这样的背景。
public void onBackPressed() {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);
}
它没有工作。当我点击HOME按钮时,应用程序将转到后台。再次点击应用程序图标后,打开登录屏幕(不是去前台后的最后一个屏幕)。 –
@AlexBarros这是问题的答案。 “打开登录屏幕(而不是在进入后台之前的最后一个屏幕)。”是您应该在登录活动内部控制的另一个问题。也许你可以在关闭之前存储最新的活动,并在需要时打开它。 – ziLk
你是对的。使用上面的代码,当我点击“返回”或“主页”按钮时,应用程序将转到后台。之后,当我点击应用程序图标时,应用程序会打开第一个屏幕(登录屏幕),当我点击后退按钮时,应用程序会转到背景前的最后一个屏幕。我正在为商店上次活动寻找一个很好的解决方案。 –
在你的活动中你必须重写onBackPressed()。
@Override
public void onBackPressed() {
super.onBackPressed();
Utils.redirectToHomeActivity(this);
}
Utils.java
public static void redirectToHomeActivity(Activity activity) {
if (activity == null || activity.isDestroyed())
return;
if (!activity.isTaskRoot()) return;//Return whether this activity is not in the root of a task.
Intent intent = new Intent(activity, MainScreenActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);//this is use to start new activity
activity.startActivity(intent);
}
当我插入上面的代码,与HOME键的问题,1是固定的(并不需要重置智能手机的应用程序切换到后台)。但是,BACK按钮使应用程序退出。 –
我不明白2点。 –