(QML) Flickable non funziona come previsto


26

Quindi, durante la creazione di un'app Ubuntu, dovevo utilizzare flickableper lo scorrimento, quindi ora ho il codice del modulo

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

    ...
  }
}

Quando lo eseguo sul mio telefono (Ubuntu utopic), la posizione predefinita del film sfarfallio è inferiore di qualche centinaio di pixel rispetto all'intestazione. Quando lo sfoglio, rimane nella posizione corretta che dovrebbe rimanere dall'inizio. Inoltre, quando si utilizza il pagestack per eseguire il push di un'altra pagina, tornare a questo rimane nella posizione corretta. Perché è questo e come posso ripararlo, in modo che possa essere nella posizione giusta dall'inizio.

Nota : ho provato molte combinazioni con ancore, larghezza, altezza, tutto. Una volta l'ho fatto rimanere in posizione, ma quando si è alzato, si è sovrapposto l'intestazione.


1
Questa domanda appartiene davvero allo Stack Overflow. E dovresti fornire un frammento più grande di codice: penso che il colpevole sia nei contenuti. Il QML è un sistema molto fragile e stravagante con molte dipendenze illogiche.
Barafu Albino,

2
@BarafuAlbino Penso che si adatti di più qui perché penso che sia molto specifico per SDK, non penso che il qml non elaborato si comporterebbe in questo modo. Anche questo potrebbe essere un bug, come ho detto quando sollevandolo rimane nella posizione giusta.
user2563892

1
Sì, ti preghiamo di lasciare questa domanda qui in modo che possa essere utile ad altri sviluppatori di app Ubuntu
mhall119

@ mhall119 Grazie per avermi difeso, almeno ti ascolteranno :)
user2563892

3
@BarafuAlbino Questa domanda va benissimo qui. Le domande sullo sviluppo su Ubuntu sono in argomento per il centro assistenza .
Seth,

Risposte:


0

C'è modo di aggiungere qml per vedere cosa sta succedendo, soprattutto perché tutte le posizioni dei componenti si influenzano a vicenda.

Una soluzione sarebbe quella di fare la cosa che hai fatto per ottenere il tuo sfarfallio nella posizione corretta, quindi aggiungere la clip: trueproprietà per evitare che si sovrapponga all'intestazione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.