(QML) Flickable が想定どおりに動作しない

(QML) Flickable が想定どおりに動作しない

スクロールに使用する必要のあるUbuntuアプリを構築しているときにflickable、次のようなコードを作成しました。

Page{
  ...
  Flickable {
    anchors.fill: parent
    content.height: element1.height + element2.height ...

    ...
  }
}

携帯電話 (ubuntu utopic) で実行すると、フリック可能な項目のデフォルトの位置はヘッダーより数百ピクセル下になります。上にフリックすると、最初から正しい位置に留まります。また、ページスタックを使用して別のページをプッシュしてからこのページに戻ると、正しい位置に留まります。なぜこのようなことが起こるのでしょうか。また、最初から正しい位置になるように修正するにはどうすればよいでしょうか。

注記: アンカー、幅、高さなど、さまざまな組み合わせを試しました。一度は所定の位置に留まりましたが、上にフリックするとヘッダーと重なってしまいました。

答え1

特にすべてのコンポーネントの位置が互いに影響し合うため、何が起こっているのかを確認するには QML が少なすぎます。

1 つの解決策としては、フリック可能な要素を正しい位置に配置するために行った操作を実行し、clip: trueヘッダーと重ならないようにプロパティを追加することが挙げられます。

関連情報