【问题标题】:Codename one BrowserComponent setBrowserNavigationCallback代号一 BrowserComponent setBrowserNavigationCallback
【发布时间】:2013-12-13 05:10:26
【问题描述】:

我正在尝试使用

setBrowserNavigationCallback

BrowserComponent 从 html 页面调用 java 方法的方法。

这就是我在 java 中所拥有的:

            map_browser = (BrowserComponent) this.getInternal();                
            map_browser.setBrowserNavigationCallback(new BrowserNavigationCallback() {                    
                public boolean shouldNavigate(String url) {
                    System.out.println("in here::" + url);
                    if (url.startsWith("http://getproperties")) {
                        System.out.println("get properties from java code 1");                            
                        return false;
                    } else {
                        return true;
                    }
                }
            });

html上的代码是:

 <a href="http://getproperties">Load</a>

这很好用。当我单击加载时,将调用 shouldNavigate()。

但是,这只适用于一次。如果我再次点击加载,没有任何反应...

这是预期的行为吗?

如果是,实现从 javascript 多次调用 java 函数的最佳方法是什么?

我做错了吗?

BR, 卫生巾

【问题讨论】:

    标签: java codenameone


    【解决方案1】:

    这会导致浏览器的位置发生变化,这意味着不会发生进一步的导航。尝试使用 myprotocol://getproperties,它不会进入浏览器的位置,应该重复触发。

    【讨论】:

    • 谢谢谢。我最终使用了 JSFunction。像魅力一样工作
    猜你喜欢
    • 2018-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-15
    相关资源
    最近更新 更多