首先調用Java方法,是的,我已經搜查,發現了這個答案已經:從GWT JSNI
GWT JSNI - problem passing Strings
我試圖調用從JSNI方法的Java方法,但不是任何地方獲得。我已經嘗試了上面給出的建議,但它仍然行不通。
下面的代碼:
public native void initCustomListeners(MapmakerMapViewPresenter.MyView view) /*-{
//public native void initCustomListeners() /*-{
$wnd.getLocationDescriptions = function(lng, lat) {
$entry([email protected]::getLocationDescriptions(DD)(lng, lat));
}
$wnd.google.maps.event.addListener(map, 'click', function(event) {
var lat = event.latLng.lat().toFixed(3);
var lng = event.latLng.lng().toFixed(3);
alert("(" + lat + ", " + lng + ")");
$wnd.getLocationDescriptions(lng, lat);
alert("Test!");
});
}-*/; @Override
public void getLocationDescriptions(double lng, double lat) {
getUiHandlers().doGetLocationDescriptions(lng, lat);
}
誰能幫助我嗎?
傑森
我仍然錯過了一些東西......你能看到我最近的帖子嗎? – Jason
我認爲在我建議使用'$ entry()'的時候出現了一個錯誤,請看更新後的答案 –
它試圖調用這個方法,但拋出一個ClassCastException。alert()表明我按照需要傳遞了一個double,但是找出正在嘗試傳輸的Class並不重要。 – Jason