วิธีการเปลี่ยนดัชนีใน OptionSelector ทันที (ไม่มีภาพเคลื่อนไหว) [ปิด]


16

ในแอพของฉันฉันใช้ 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.
         * stationsModel is a model containing all of the stations.
         */
    }
}

ความช่วยเหลือหรือข้อมูลเชิงลึกชื่นชม - ไชโย!


โปรดให้รหัสแก่เราเพียงพอที่จะทำให้เกิดปัญหาของคุณอีกครั้ง วิดีโอมีประโยชน์แน่นอน แต่ค่อนข้างยากที่จะช่วยคุณโดยไม่ต้องใช้โค้ดขนาดเล็กเพื่อนำมาใช้ซ้ำ (ดูsscce.org )
Sylvain Pineau

สวัสดี Sylvain ขอโทษที่ล่าช้า. นี่คือไฟล์ QML ที่คุณสามารถใช้ทดสอบ เพียงแค่สร้างโครงการ Ubuntu Simple UI ใหม่และแทนที่ไฟล์ QML หลักของคุณด้วย: pastebin.ubuntu.com/9534780
Aaron Hastings

คำตอบ:


0

คุณสามารถดูสำเนาของ OptionSelector qml ที่นี่โดยใช้ UbuntuNumberAnimation เมื่อยังไม่ได้ขยาย ไม่มีตัวเลือกในการปิดและถ้าจำเป็นต้องใช้คุณสมบัติคุณจะต้องทำการอัปสตรีมและรอสักครู่สำหรับไลบรารี่รุ่นใหม่

คุณสามารถสร้างวิดเจ็ตตัวเลือกเปิดของคุณเองได้ลบส่วนของภาพเคลื่อนไหวออกและตรวจสอบให้แน่ใจว่าคุณได้เปลี่ยนชื่อมันเพื่อใช้ในรหัสของคุณ ฉันแนะนำเส้นทางนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.