سؤال

لقد بدأت في النظر إلى البعض خارجي GWT مكتبات للرسوم المتحركة ، لكنها جميعها تبدو مبالغة قليلاً لما أريد.

أحاول التقليد أدوات jQuery Scrollabel البرنامج المساعد في GWT للتنقل التمرير (فكر iPhone). ينقر المستخدم على عنصر ما ، يقوم صفحة التمرير إلى لوحة الطفل لهذا العنصر ، والتي قد يكون لها أيضًا أطفال يمكن النقر عليهم.

كل ما أحتاج إلى فعله هو تحريك div ، وعدد x من البكسل للخلف وللأمام خلال بعض الوقت الثابت

الحقيقي الوحيد درس تعليمي لقد وجدت في كتابة الرسوم المتحركة في GWT عمرها عامين ويبدو أنها مطوّلة بعض الشيء ، (إدارة الإطارات الفردية وما إلى ذلك)

ألا يوجد حل أبسط لنقل Div بسهولة من موقع إلى آخر دون الحاجة إلى كل الرصيف الإضافي؟

سامحني ولكني قادم من ترميز jQuery الذي تم بناؤه ببساطة وسهولة.

هل كانت مفيدة؟

المحلول

GWT 2's Build in Animation Class جيدة جدًا. كل ما عليك فعله هو تمديد الفصل ، وتنفيذ OnupDate () ، ثم استدعاء Run () لبدء الرسوم المتحركة. لم أستخدم خاصية ScrollTop ، لذا لا يمكنني ضمان أن هذا سيعمل بشكل صحيح ، ولكن يجب أن يمنحك الفكرة الأساسية:

public class ScrollAnimation extends Animation {
    private final Element e;
    private int scrollStart;
    private int scrollStop;

    public ScrollAnimation(Element e) {
        this.e = e;
    }

    public scrollTo(int position, int milliseconds) {
        scrollStart = e.getPropertyInt("scrollTop");
        scrollStop = position;
        run(milliseconds);
    }

    @Override
    protected void onUpdate(double progress) {
        int position = scrollStart + (int)(progress * (scrollStop - scrollStart));
        e.setPropertyInt("scrollTop", position);
    }
}

نصائح أخرى

لأغطيتي ، أردت فقط تحريك لوحة تتحرك. اتضح أن هذا مدمج في LayoutPanel ، لذلك لم أكن بحاجة إلى لمس فئة الرسوم المتحركة على الإطلاق.

http://code.google.com/webtoolkit/doc/latest/devguideuipanels.html#animation

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top