从其他活动开始时如何停止每次创建活动?

时间:2019-05-31 07:22:04

标签: android

我正在尝试创建一个多活动应用程序。有活动1.mainactivity 2.mapsactivity。现在我有一个导航抽屉,即当用户单击地图时 将调用一个意图来映射活动。因此,当用户开始在mapsactivity中操作并且在onBackpressed上时,他再次返回mainactivity,而当他再次前往maps时,该活动再次开始。这个问题有解决方案吗,即使导航到其他活动我也该如何运行我的活动?

“这是具有导航抽屉的主要活动的一部分”

 public boolean onNavigationItemSelected(MenuItem item) {
        // Handle navigation view item clicks here.
        int id = item.getItemId();

        if (id == R.id.nav_home) {
        } else if (id == R.id.nav_maps) {
            // Maps Activity
            Intent intent = new Intent(getApplicationContext(),AttendanceActivity.class);
            startActivity(intent);
        } else if (id == R.id.nav_rider_app) {

       }

3 个答案:

答案 0 :(得分:1)

将此添加到您的第二个活动中

 @Override
public void onBackPressed() {
   moveTaskToBack(true);
}

答案 1 :(得分:0)

首先,您应该在mapsactivity中处理onBackpressed。如您所见here被压下将破坏您的活动。您可以在mapsactivity中执行以下操作:

    - task: build
    config:
      platform: linux
      image_resource:
        source:
          repository: java
          tag: "8"
        type: docker-image
      inputs:
        - name: resource-repo
      outputs:
        - name: artifacts
      run:
        path: ci/scripts/build.sh            
      params:
        u: ((artifactory_user))
        p: ((artifactory_password))

答案 2 :(得分:0)

在您的onBackPressed()中覆盖方法MapActivity,并将super.onBackPressed();替换为

Intent mainActivtyIntent = new Intent(this, MainActivity.class) mainActivtyIntent.addFlag(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(mainActivtyIntent);