3

是否可以在 QML 中使用 SwipeView 进行垂直滑动而不是水平滑动?

我希望 SwipeView 的页面内容垂直浮动,因此用户必须上下滚动才能在页面之间导航。

如果这是不可能的,我将如何去做?

更新此功能已添加到 QT 中,如下所示:

http://doc-snapshots.qt.io/qt5-dev/qml-qtquick-controls2-swipeview.html#orientation-prop

4

1 回答 1

1

经过更多研究后,我想出了一个可以正常工作的解决方案,使用 ListView/ListModel/ListDelegate - 将它发布在这里以供其他想要实现相同目标的人使用。

QML:

ListView {
    snapMode: ListView.SnapOneItem
    highlightRangeMode: ListView.StrictlyEnforceRange

    anchors {
        top: parent.top
        bottom: parent.bottom
        left: parent.left
        right: parent.right
    }

    model: ListModel {
        id: listModel

        ListElement {
            text: "1"
        }
        ListElement {
            text: "2"
        }
        ListElement {
            text: "3"
        }
    }

    delegate: Page {
        width:  ListView.view.width
        height: ListView.view.height

        Text {
            anchors.centerIn: parent
            text: model.text
        }
    }
}
于 2016-09-15T11:54:06.770 回答