【问题标题】:Android: Start main activity when pressing Back ButtonAndroid:按下后退按钮时启动主要活动
【发布时间】:2014-03-17 21:26:23
【问题描述】:

我需要有关此活动的帮助。我有一个主要活动,当单击一个按钮时,一个新活动开始并且主要活动完成。我想要的是在第二个活动中按下后退按钮时重新开始主要活动。或者,当我从第二个返回时,您可以告诉我另一种刷新主要活动的方法,而无需在堆栈中添加新活动。我将非常感谢您的帮助。谢谢你:)

P.s:我需要告诉你,我的 Activity 扩展了 ActionBarActivity,而不是 Activity,所以如果需要,我不太确定如何覆盖 onBackPressed()。

【问题讨论】:

    标签: android eclipse android-activity


    【解决方案1】:

    您需要通过添加父活动来提供向上导航。这也改善了用户的整体导航体验。

    见 - http://developer.android.com/training/implementing-navigation/ancestral.html

    【讨论】:

      【解决方案2】:
      Intent newIntent = new Intent(context, Another.class);
          context.startActivity(newIntent, Intent.FLAG_ACTIVITY_CLEAR_TOP);
          finish();
      

      您可以使用上述代码从“Main”开始您的新活动。 'finish()' 调用将从堆栈中删除主 Activity。

      然后在你的新活动中你可以这样做:

      @Override
      public void onBackPressed(){
      Intent newIntent = new Intent(context, Main.class);
          context.startActivity(newIntent);
          finish();
      }
      

      【讨论】:

      • context 应该这样声明,对吧?上下文上下文 = getApplicationContext();如果是,我没有 startActivityForResult() 方法
      • context 是调用函数的活动的上下文。即“这个”。您可以使用 Context context = this 在 onCreate 中获取活动的上下文。在代码中使用此上下文。
      • 如我所说,我没有context.startActivityForResult()这样的方法
      • 你的主要活动扩展了什么?
      猜你喜欢
      • 2011-11-28
      • 2014-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-08
      • 2023-03-29
      • 1970-01-01
      相关资源
      最近更新 更多