2

我的项目中有两个课程。一个是名为 Test 的主类,它包含代码的所有功能。它还定义了多个数组列表,我想使用其中的两个,并使用 JXBrowser 库将它们的值放入 JavaScript。请看我添加评论的地方。基本上,我要做的是在 Java 类中使用 JXBrowser 库中的 JavaScript 使用 Google Maps,并通过从主类中获取经度和纬度并将它们添加到 JavaScript 代码中来添加多个标记。

final Browser browser = new Browser();
    BrowserView browserView = new BrowserView(browser);


    JFrame frame = new JFrame("Map");
    frame.add(browserView, BorderLayout.CENTER);
    frame.setSize(900, 500);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);


    browser.loadHTML("<html>\n"
            + "    <head>\n"
            + "   <meta name=\"viewport\" content=\"initial-scale=1.0, user-scalable=no\"/>\n"
            + "   <style type=\"text/css\">\n"
            + "       html { height: 100% }\n"
            + "       body { height: 100%; margin: 0; padding: 0 }\n"
            + "       #map-canvas { height: 100% }\n"
            + "   </style>\n"
            + "   <script type=\"text/javascript\"\n"
            + "           src=\"https://maps.googleapis.com/maps/api/js?key=AIzaSyC-6h0sjJTfO2Kf5JxJYKdD-DwHwPHKVZI&sensor=false\"></script>\n"
            + "   <script type=\"text/javascript\">\n"
            + "     var map;\n"
            + "     function initialize() {\n"
            + "       var mapOptions = {\n"
            + "         center: new google.maps.LatLng(48.209331, 16.381302),\n"
            + "         zoom: 4\n"
            + "       };\n"
            + "      var marker, i;\n"
//This is where the problem is and what i'm trying to do.
            + "      for (i = 0; i < Test.keywordIndex.getsize() ; i++) {\n" 
            + "         marker = new google.maps.Marker({\n"
            + "         position: new  google.maps.LatLng(Test.latitude.get(Test.keywordIndex.get(i), Test.longitude.get(Test.keywordIndex.get(i),\n"
            + "         map: map\n"
            + "       });\n"
            + "     var marker = new google.maps.Marker({\n"
            + "    position:  new google.maps.LatLng(48.209331, 16.381302),\n"
            + "    map: map,\n"
            + "    title: 'Hello World!'\n"
            + "});"
            + "     }\n"
            + "     google.maps.event.addDomListener(window, 'load', initialize);\n"
            + "\n"
            + "   </script>\n"
            + "</head>\n"
            + "<body>\n"
            + "<div id=\"map-canvas\"></div>");

我有这个想法,但不确定代码本身的执行

4

1 回答 1

0

JxBrowser 将在2015 年 10 月至 2015 年 11 月发布的 6.0 版本中支持JavaScript-Java Bridge中的 ArrayList。

于 2015-10-21T12:39:06.457 回答