【问题标题】:Programmatically change launcher activity以编程方式更改启动器活动
【发布时间】:2012-09-27 17:21:50
【问题描述】:

有没有办法可以更改应用程序启动时启动的活动?

【问题讨论】:

标签: android android-activity launcher


【解决方案1】:

我建议在清单中始终指定一个辅助活动作为启动器活动。然后,在该活动的 onCreate 中,您可以做任何您需要的决定来决定启动哪个应用程序,然后完成辅助活动。示例:

在您的清单(启动器活动)中:

<activity android:name=".HelperActivity" ... />

然后,在 HelperActivity 的 onCreate 中:

@Override
public void onCreate(Bundle b){
    super.onCreate();
    //determine what activity you want
    startActivity(new Intent(this, NewActivity.class);
    finish();
}

【讨论】:

  • 您可能会调用 Activity.overridePendingTransition(),其中 onCreate() 中的动画 ID 为 0,然后还覆盖 finish(),调用 Activity.overridePendingTransition(),然后调用 super.finish()。
  • 为了避免动画和堆栈导航的历史,我在 AndroidManifest 中只使用了 'android:noHistory="true"' 属性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多