2

GWTで新しいGoogle+ ログイン ボタンを使用したいと考えています。HTMLからウィジェットを作成する方法に関するこの投稿を見つけまし たが、まだ成功していません。

public class GooglePlusSignIn extends Widget{

private final String googleHtml="<span id=\"signinButton\">"
+"<span"
+"class=\"g-signin\""
+"data-callback=\"signinCallback\""
+"data-clientid=\"clientID\""
+"data-cookiepolicy=\"single_host_origin\""
+"data-requestvisibleactions=\"http://schemas.google.com/AddActivity\""
+"data-scope=\"https://www.googleapis.com/auth/plus.login\">"
+"</span>"
+"</span>";

 public GooglePlusSignIn(String params) {
     Document document = Document.get();
     DivElement divElement = document.createDivElement();
     divElement.setInnerHTML(googleHtml);
     setElement(divElement); //important, widget needs to know it's root element
 }


 private static native void doJsMagic(Element element)/*-{ //notifies js about element
 }-*/;

 private static native void undoJsMagic(Element element)/*-{ 
    //notifies js that it should do some cleanup (if needed)
    //since it is unaware of GWT widget lifecycle

 }-*/;

 @Override
 public void onAttach() {
    super.onAttach();
    doJsMagic(getElement());
 }

 @Override
 public void onDetach() {
    super.onDetach();
//        undoJsMagic(getElement());
     }

}
4

2 に答える 2

0

を呼び出す必要があるように見えますが$wnd.gapi.signin.go(element)、最初のattachdoJsMagicで一度だけ実行してください。で何もする必要はありません。undoJsMagic

于 2013-02-28T16:58:24.867 に答える