如何从javascript调用codenameone java类方法?
我有一个codenameone类,其中包含一个为移动应用程序上载文件的方法。我想在用户单击上载按钮时,从我的javascript函数调用该codenameone类方法 下面是我的codenameone类方法,它将上载一个文件如何从javascript调用codenameone java类方法?,javascript,codenameone,Javascript,Codenameone,我有一个codenameone类,其中包含一个为移动应用程序上载文件的方法。我想在用户单击上载按钮时,从我的javascript函数调用该codenameone类方法 下面是我的codenameone类方法,它将上载一个文件 public void actionPerformed1(){ if (FileChooser.isAvailable()) { FileChooser.showOpenDialog("image/*", e2-> {
public void actionPerformed1(){
if (FileChooser.isAvailable()) {
FileChooser.showOpenDialog("image/*", e2-> {
String file=null;
if(e2!=null){
file = (String)e2.getSource();
}
if (file == null) {
hi.revalidate();
} else {
String extension = null;
if (file.lastIndexOf(".") > 0) {
extension = file.substring(file.lastIndexOf(".")+1);
}
if ("txt".equals(extension)) {
FileSystemStorage fs = FileSystemStorage.getInstance();
try {
InputStream fis = fs.openInputStream(file);
hi.addComponent(new SpanLabel(Util.readToString(fis)));
} catch (Exception ex) {
Log.e(ex);
}
} else {
hi.add("Selected file "+file);
}
}
hi.revalidate();
});
}
<pre>
type="button" value="call method"
onClick = "document.FileChooserDemo.actionPerformed1()"
</pre>
下面是我的html文件,我将在其中使用javascript调用codenameone ActionPerforme1()方法
type=“button”value=“调用方法”
onClick=“document.FileChooserDemo.actionPerformed1()”
我可以在javascript中做什么来调用codenameone方法
谢谢。查看标题为“从Javascript调用Java方法”的部分
然后通过JavaScript,这将起作用:
@昆汀不是一个Java小程序。你正在颠倒阅读代码这是一个嵌入式移动应用程序。。。
JSObject logger = (JSObject)ctx.get("{}");
logger.set("log", new JSFunction(){
public void apply(JSObject self, Object[] args) {
String msg = (String)args[0];
Log.p("[Javascript Logger] "+msg);
}
});
ctx.set("window.logger", logger);
logger.log('This is a test message');