搜尋

首頁  >  問答  >  主體

Android 当activity A 启动了activityB C D之后再返回A

并且销毁BCD还要刷新A内的数据,应该要用starActivityForResult么?单例模式能行么?

高洛峰高洛峰2769 天前497

全部回覆(2)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:48:15

    如果只會在B回A那麼就用startActivityForResultstartActivityForResult

    如果在B, C, D都有可能返回A, 同时不会有同时两个A的话, 使用SingleTask模式, 直接在B/C/D中直接启动A, 根据singleTask的特性就会自动销毁A之后启动的Activity, 返回数据可以直接通过intent传数据, 然后再onNewIntent()

    如果在B, C, D都有可能返回A, 同時不會有同時兩個A的話, 使用SingleTask模式, 直接在B/C/D中直接啟動A, 根據singleTask的特性就會自動銷毀A之後啟動的Activity, 傳回資料可以直接透過intent傳遞資料, 然後再onNewIntent()中接收資料刷新視圖🎜

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:48:15

    直接調回A可以使用清棧頂或B、C、D切換時直接finish等方式實作。
    返回A時刷新頁面可以透過onResume方法或廣播等方式實現。

    回覆
    0
  • 取消回覆