Spinner コントロール (または、アイテムの Scolllable リスト) を設計しています。機能に関する限り、正常に動作します
主な問題は、アイテムをスクロールするときに円運動を感じさせたいということです。そのため、スクロール リストでその効果を得るために、先行アイテムと後続アイテムのサイズを現在のアイテムよりも比較的小さくすることにしました。
サイズ違いの商品を揃えるのにとても苦労しています。誰でも同じことを進める方法を教えてもらえますか。
以下は私のコードスニペットです
ContentModel.qml
import QtQuick 1.1
Rectangle {
property alias model: view.model
property alias delegate: view.delegate
property real itemHeight: height/5
clip: true
PathView {
id: view
anchors.fill: parent
//number of items visible on the path at any one time.
pathItemCount: height/itemHeight
// Ensuring the selected componenet to be at the center
preferredHighlightBegin: 0.5
preferredHighlightEnd: 0.5
// select maximum distance from the path that initiate mouse dragging
dragMargin: view.width
//Declare the path of list
path: Path {
startX: view.width/2; startY: -itemHeight/2
PathLine { x: view.width/2; y: view.pathItemCount*itemHeight + itemHeight/.8}
}
}
}
main.qml スニペット
main.qml
.......
ContentModel{
id: ContentModel_spinner
width: ContentModel_scroll.width; height: ContentModel_scroll.height
focus: true
model: 20
delegate: Text { font.pixelSize: index === ContentModel_spinner.currentIndex ? sec_spinner.height/4 : ContentModel_spinner.height/4.5; text: formatindex(index); height: ContentModel_scroll.height }
}