2016-06-26 42 views
0

为了学习,我一直在研究具有几个功能的恒温器应用程序。其中一个特点是可以设定他们的日程安排。所以我有一个显示所有日子的屏幕。为了改变这些,一个按钮打开一个新的活动,使用户能够调整当天的运行。Android工作室,向后发送对象

现在我已经得到了发送对象,包含从一周到日程计划的计划和计划。但是,离开日间屏幕时,日程安排也需要发回。那是我遇到问题的地方。

WeekScreen,下面的方法创建的意图

@Override 
public void onClick(View view) { 
    dayScheduleIntent = new Intent(WeekScheduleScreen.this.getBaseContext(), DayScheduleScreen.class); 
    Serializable switches = weekschedule.Get(daynumber); 
    dayScheduleIntent.putExtra("daySchedule", switches); 
    startActivity(dayScheduleIntent); 
} 

DayScheduleScreen,这里是它所读出

DaySchedule daySchedule = getIntent().getSerializableExtra("daySchedule"); 

到目前为止好。但反向不起作用

DayScheduleScreen,位于OnBackPressed

intent.putExtra("daySchedule",(Serializable)daySchedule.GetSwitches()); 

WeekScreen,位于的onResume

(DaySchedule)dayScheduleIntent.getSerializableExtra("daySchedule"); 

我已经尝试了很多。但我完全难住。虽然putExtra实际上在DayScheduleScreen中工作,但在Weekscreen中它永远不会到达,我不能使用直接引用,因为它在从意图中检索时看起来是复制的。那么,我如何才能将更改后的数据恢复到Weekscreen?提前致谢。

+0

之间传递是你可以使用我的答案来解决你的问题? – Rockney

回答

0

您在寻找startActivityForResult()方法。此方法允许您将数据从DayScheduleScreen传回Weekscreen。 这是解释here。这是在第二章解释说:

3.数据活动

+0

谢谢,那正是我所需要的。你是一个安全的生活! – Dutcher