In my QML app I have a ListView populated from a model. Each delegate in the ListView is a button which moves you to a new screen. I save the ListView’s contentY property so that when the user moves back, he/she can be at the same point in the list as when he left it.
The problem is that, if this point is some way down the list, there is a pause to move there, because the ListView instantiates each delegate until that point is reached.
In a list with many delegates this causes a noticeable slow-down.
I guess this happens because the system doesn’t know what height each delegate is, so it has to instantiate each one to figure out which delegate is at the given Y co-ordinate.
Is there a way round this? e.g. to specify a fixed height for each delegate? Or to give delegates a way to return their height without instantiating themselves (Cocoa Touch’s ListView equivalent, I forget what it is called, offers both of these).