1

通常、これを行います。

@UiHandler("aLink")
void onClickALink(ClickEvent e) {
    // do something
}

しかし、独自の Handler 実装を使用したい場合はどうすればよいでしょうか?

class MyClickHandler implements ClickHandler {
    int i;

    MyClickHandler(int i) {
        this.i = i;
    }

    @Override
    public void onClick(ClickEvent event) {
        // do something
    }
}

では、@UiHandler で MyClickHandler を使用するにはどうすればよいですか? iつまり、コンストラクタに渡しますか?

4

1 に答える 1

1

特定のクリック イベントも作成する必要があります。

class MyClickHandler implements ClickHandler {
    int i;

    MyClickHandler(int i) {
        this.i = i;
    }

    @Override
    public void onClick(MyClickEvent event) {  // MyClickEvent!
        // do something
    }
}

次に、次のことができます。

@UiHandler("aLink")
void onClickALink(MyClickEvent e) {
    // do something
}

MyClickEventに関連付けられていることを GWT が認識できるように、必要なすべてのメソッドを に実装してMyClickHandlerください。ClickEvent の dispatch()、getAssociatedType()、getType() を参照

例については、 でのCustomEvent実装方法を参照してくださいHandlerDemo.java

では、@UiHandler で MyClickHandler を使用するにはどうすればよいですか? つまり、コンストラクターに i を渡しますか?

あなたはそうしない。

于 2013-01-04T03:25:44.410 に答える