在我的应用程序中,我使用 OptionSelector 从自行车站列表中进行选择。我还有一个地图组件,每个站都有地标。
当我点击一个地标时,它也会将 OptionSelector 更改为相应站的索引,因为这是很好的 UX。
不好的 UX 是 OptionSelector 如何响应这个索引变化,它自己动画,就好像它被用户的手指轻弹一样。换句话说,在用户点击地图标记并接收到他们需要的所有信息后很久,OptionSelector 仍在“旋转”到站的索引。
这是演示此行为的视频:https : //www.youtube.com/watch?v=jXKWlAmNYsw
我想让这个 OptionSelector 立即改变它的索引,没有动画。有没有办法做到这一点?
这是我目前做事的方式。如果这是错误的处理方式,我很高兴得到纠正。我使用 WorkerScript(一个 QML 线程,或多或少)来进行 API 调用。当这个 WorkerScript 返回时,它会像这样移动 OptionSelector:
WorkerScript {
id: queryStationsWorker
source: "../js/getstations.js"
onMessage: {
[...]
// Move the OptionSelector to the corresponding station's index.
stationSelector.selectedIndex = getLastStationIndex(lastStation.contents.stationName, stationsModel)
/*
* For the sake of clarity:
*
* getLastStationIndex() is a function which just returns an integer.
* lastStation is a U1DB database used for state saving.
* …
Run Code Online (Sandbox Code Playgroud)