2017-03-17 37 views
0

这是一个测试模式应用程序,用于测试此应用程序安装的设备(显示屏,按键等)。向上导航vs onBackPressed()android - 使用View Pager更新碎片?

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

例如,按压显示器上的“开始显示测试” 片段将用户带到显示活性其中它们然后用一排三个图像呈现;那么此活动会从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? 

回答