[英]Going Home Screen of app in android?
我想在我位于内页的按钮上转到应用程序的主页。 谁能告诉我该怎么做?
感谢您 ,
斯里尼瓦斯
在您的按钮单击事件上,添加以下代码行
moveTaskToBack(true);
可能有两种方法(一般概念):
第一个方法是,如果您不介意再次重新创建家庭活动,则只需再次启动它,除非该活动是“ singleTask”或“ singleInstance”活动。
第二个方法是关闭堆栈顶部的活动,只要它不是您的家庭活动即可。 我看不到一种简单的方法来实现此目的,也许是通过用启动活动检查的特定结果完成当前活动,然后启动活动将检查该特定结果,然后关闭该结果并将其发送,直到达到home活动为止。
我建议创建一个Application
类。 在该类中,有一个布尔字段,默认情况下为false。 每个Activity
都应检查onResume()
该字段是否为true,如果为true,则调用finish()
(主活动除外,该活动总是在onResume()
将该字段设置为false
)。 您甚至可以创建一个自定义Activity
来执行此操作,然后让所有活动扩展该活动。
资源:
http://d.android.com/resources/faq/framework.html#3
android.app.Application类
android.app.Application是需要维护全局应用程序状态的用户的基类。 可以从任何活动或服务通过getApplication()访问它。 它具有几种生命周期方法,并且如果您在AndroidManifest.xml中进行注册,它将由Android自动实例化。
参考: http : //d.android.com/reference/android/app/Application.html
精简示例:
MyApp
public class MyApp extends Application { public boolean goBack = false; }
我的活动
public class MyActivity extends Activity {
protected void onResume() {
if ( ((MyApp) getApplication()).goBack ) finish();
}
}
一些活动
public class SomeActivity extends MyActivity {
// nothing special here, it's all been implemented in MyActivity!
}
主要活动
public class MainActivity extends Activity {
protected void onResume() {
((MyApp) getApplication()).goBack = false;
}
}
AndroidManifest.xml
[...] <application android:name=".MyApp" [...]> [...]
注意:您不需要在AndroidManifest.xml
声明MyActivity
,因为它永远不会直接启动(只会被扩展)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.