在我的BB10应用程序中,我希望在当前屏幕的中央覆盖ActivityIndicator
以指示何时发生某些事情(例如"正在加载")。
我目前的解决方案是将这样的指标嵌入自定义透明对话框的中心,如下所示:
import bb.cascades 1.4
Dialog {
id: activityDialog
objectName: "activityDialog"
content: Container {
id: activityDialogContainer
horizontalAlignment: HorizontalAlignment.Center
verticalAlignment: VerticalAlignment.Center
// fully transparent background!
background: Color.create(0, 0, 0, 0)
layout: StackLayout {
}
ActivityIndicator {
id: theIndicator
preferredWidth: 500
preferredHeight: 500
}
Label {
id: activityLabel;
objectName: "activityLabel";
text: ""
horizontalAlignment: HorizontalAlignment.Center
verticalAlignment: VerticalAlignment.Center
}
}
onOpened: {
theIndicator.start();
}
onClosed: {
theIndicator.stop();
}
}
当我想显示指示符时,我可以简单地打开对话框。
问题是该对话框会阻止与基础Page
/ NavigationPane
控件的任何互动。我理解为什么。该对话框占据整个屏幕,虽然透明仍然基本上隐藏了底层窗格的任何UI。
如何在屏幕中央覆盖ActivityIndicator
,而不会阻止与底层面板控件的互动?
答案 0 :(得分:1)
我现在意识到我只需要在我的主DockLayout
和Container
周围创建一个ActivityIndicator
。