代码之家  ›  专栏  ›  技术社区  ›  sjain

在对话框取消时调用上一个活动方法

  •  3
  • sjain  · 技术社区  · 12 年前

    在课堂上点击某个按钮 MainActivity ,显示了某个片段的对话框 FragDialog :

    FragDialog cf = new FragDialog().newInstace();
    
    cf.show(getSupportFragmentManager(), "dialog");
    

    当按下硬件后退按钮时,或当活动 主要活动 注意力集中,对话被取消,我回到活动中 主要活动 .

    方法 onResume() , onAttach() 活动的 主要活动 对话框关闭后不会被调用。

    想法是刷新活动 主要活动 对话框关闭后,根据对话框片段中选择的字段获得更改后的视图 FragDialog .

    如文件中所述 DialogFragment ,

    // DialogFragment.show() will take care of adding the fragment
    // in a transaction.  We also want to remove any currently showing
    // dialog, so make our own transaction and take care of that here.
    

    但补充 remove() 似乎毫无意义,因为它没有被调用,即使对话也会在没有它的情况下被解雇。

    我想知道如果这个会被调用,那么我就可以开始活动了 主要活动 再次反映变化。

    1 回复  |  直到 12 年前
        1
  •  1
  •   Lebedevsd    12 年前

    当您调用对话框时,您并没有失去对活动的控制,它也不会处于非活动状态。当您的对话框关闭时,您只需要将一个事件变成一个活动,通过按钮取消它是非常容易的。然后你每年都会改变你的观点。

    这是一篇关于对话的好文章 http://developer.android.com/guide/topics/ui/dialogs.html