我正在编写一个BlackBerry应用程序,该应用程序具有用户导航的多个屏幕(如调查)。提交调查后,应用程序必须返回到开始屏幕,之后,不得允许他们导航回之前显示的屏幕。
实现这个的正确方法是什么?
目前我正在打电话
UiApplication.getUiApplication().popScreen(UiApplication.getUiApplication().getActiveScreen());
有不同屏幕的次数。是否有更优雅的解决方案可以回到开始屏幕?
答案 0 :(得分:3)
UiApplication.getScreenCount()
将始终为您提供屏幕数量,因此您可以执行此操作(从任何地方,它甚至不必来自任何特定的Screen
类):
public void popToRoot() {
UiApplication app = UiApplication.getUiApplication();
while (app.getScreenCount() > 1) {
app.popScreen(app.getActiveScreen());
}
}