Я пытаюсь отобразить ActivityIndicator
, пока загружаются данные моего списка. Вот моя страница QML:
Page {
signal articleClicked(variant article)
id: root
titleBar: TitleBar {
title: qsTr("All feeds")
visibility: ChromeVisibility.Visible
} // titleBar
Container {
layout: DockLayout {}
ListView {
dataModel: _feedModel
listItemComponents: [
ListItemComponent {
type: "item"
FeedListComponent {
feed: ListItemData
}
}
]
visible: !_manager.working
onTriggered: {
if (indexPath.length > 1) {
root.articleClicked(dataModel.data(indexPath));
}
}
} // ListView
ActivityIndicator {
verticalAlignment: VerticalAlignment.Fill
horizontalAlignment: HorizontalAlignment.Fill
running: _manager.working
}
} // Root container
} // Page
Чтобы отобразить ActivityIndicator
по центру, я использую DockLayout
. Это работает нормально. Однако, когда я переключаю _manager.working
на false
и отображаю ListView
, я не могу прокручивать. Я предполагаю, что он не ограничен размером экрана, поэтому он считает, что прокручивать его не нужно, так как все элементы видны. Но это не так. Я попытался добавить verticalAlignment: VerticalAlignment.Fill
и horizontalAlignment: HorizontalAlignment.Fill
к ListView
без каких-либо изменений. Любой намек на то, как я могу заставить ListView
поместиться на экране? Спасибо.