关闭片段时更新活动

时间:2016-06-29 09:07:08

标签: android android-fragments android-activity

我有一个活动A.一旦加载了A,点击A中的按钮就会在A的主页面布局上添加一个片段F.现在一旦进入F,如果我正在调用getActivity().getSupportFragmentManager().popBackStack();,那么实际上会再次导航到活动A中。一旦片段被popbackstacked,我是否有任何方式可以对活动A进行一些更改?一旦片段被popbackstacked并且你有活动,我不知道活动中调用了哪种方法。请帮忙。

2 个答案:

答案 0 :(得分:1)

您可以添加OnBackStackChangedListener()。做这样的事情:

getSupportFragmentManager().addOnBackStackChangedListener(new OnBackStackChangedListener()
{
    public void onBackStackChanged() 
    {                   

    }
});

在后台堆栈上每次更改后都会调用此回调。

答案 1 :(得分:1)

在您的活动中创建并实施一个界面

  public static class MainActivity extends Activity
    implements MyFragment.OnFragmentCloseListener {

   public void onClosed(Bundle data) {
    //get the budle data here
   }
}

在您的活动中

    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations={"/springMVC-config/mainController-servlet.xml"})
    public class DiagnosticsControllerTest {

    @Mock
    DiagnosticsService diagnosticsService;

    private DiagnosticsController diagnosticsController;

    private MockMvc mockMvc;

    @Before
    public void setUp() {
        MockitoAnnotations.initMocks(this);
        diagnosticsController = new DiagnosticsController();
        diagnosticsController.setService(diagnosticsService);
        this.mockMvc = MockMvcBuilders.standaloneSetup(diagnosticsController).build();
    }

    @Test
    public void shouldRun() {
        assertTrue(1 == 1);
    }
}