向上导航vs onBackPressed()android - 使用View Pager更新片段?

时间:2017-03-17 13:38:12

标签: android android-fragments

这是一个测试模式应用,用于测试安装此应用程序的设备(显示,按键等)。

该应用程序主要在一个活动上运行查看寻呼机,其中几个片段模拟不同的“屏幕”。每个片段都有一个按钮,然后将用户带到另一个活动,通过它可以测试他们的设备。

例如,在显示屏片段上按“开始显示测试”会将用户带到显示活动,然后在那里显示连续的三张图像;然后,此活动从MainActivity调用名为DISPLAY_TEST_PASSED的全局标志并将其设置为true,并使用 ViewPager 和显示片段将用户导航回MainActivity。

我想要发生的是显示屏上的文字片段从“显示测试”更新为“显示测试 - 通过”...但是显示活动在更新标志后调用onBackPressed()不会更新显示片段中的文本。

有趣的是,从显示活动调用NavUtils.navigateUpFromSameTask(DisplayTestActivity.this)确实更新了显示片段中的文本。有什么不同?我虽然导航与调用onBackPressed()相同?

我的应用程序的视觉效果:

    MainActivity (with view pager) : fragment1 ... DisplayFragment ... fragment3 ... fragment4 ...
                                                        |
                                                   DisplayActivity

    I want DisplayActivity to update MainActivity (and thus the display fragment)
    but for some reason this doesn't happen onBackPress() while it does on Up 
    Navigation. Why?

1 个答案:

答案 0 :(得分:0)

这似乎是

的工作

protected void onActivityResult(int requestCode, int resultCode, Intent data)

请参阅https://developer.android.com/reference/android/app/Activity.html#StartingActivities