从onBackPressed()发送布尔意图到onStart()

时间:2015-09-02 19:36:07

标签: android android-intent

当我按下Map活动中的后退按钮时,我正尝试将MainActivity活动中的意图发送到Map。意图应该在onStart()的{​​{1}}中收到,但我只是在那里MainActivity extras。当用户单击操作栏中的按钮时,将设置Map活动中的变量NULL。我想在MainActivity的操作栏中设置服务的状态。

我曾尝试从Map活动中的serviceStatus发送意图,但我也因为额外内容而无效。

我该如何解决?

地图活动:

finish()

MainActivity:

public class Map extends ActionBarActivity{
 boolean serviceStatus;

    @Override
    public void onBackPressed() {
        super.onBackPressed();      
        Intent serviceStatusIntent = new Intent(Map.this, MainActivity.class);
         // I have debugged it and serviceStatus is false here also the intent exists.
        serviceStatusIntent.putExtra("ServiceStatusMapExtras", serviceStatus);
        startActivity(serviceStatusIntent);
    }

1 个答案:

答案 0 :(得分:1)

删除super.onBackPressed();

修复MainActivity

public class MainActivity extends ActionBarActivity {
        @Override
      boolean serviceStatus = true;
        protected void onStart() {
            super.onStart();                
            serviceStatus =  getIntent().getBooleanExtra("ServiceStatusMapExtras", false);

       }
}