需求场景:
(1)有(Activity) A1,A2两个,以及(Dialog )D1;
(2)其中A1可以进入A2,A1需要弹出D1做操作,A2也需要弹出D1做操作;
(3)如果从A1打开D1,那么D1处理完毕后需要刷新A1的数据
(4)如果从A1进入A2,那么A2中处理完毕后需要刷新A1的数据
(5)如果从A1进到A2,A2打开D1,那么D1处理完毕后需要关闭A2,返回到A1,并且需要刷新A1的数据。
分析:
(1) A1,A2与D1都有交互,所以可以设计一个接口Interface1给A1,A2去实现,D1操作都通过Interface1来调用A1的刷新,A2的关闭。
(2) A2处理数据需要通知A1,所以采用startActivityForResult来实现通知功能。
把接口和setResult,onActivityResult联系起来,即可解决数据局部刷新的问题。