我一直关注此Tutorial来实现Write Java code in nativescript and use directly in typescript
但我收到了错误Cannot read property 'MyToast' of undefined
app.component.ts:
import {Component} from "@angular/core";
let application = require("application");
declare var org:any;
@Component({
selector: "my-app",
templateUrl: "app.component.html",
})
export class AppComponent {
public onTap() {
org.example.MyToast.showToast(application.android.context,"You pressed the button","short");
}
}
我在平台中创建了 MyToast.java 类 - > src - > java - >组织 - >例如:
package org.example;
import android.widget.Toast;
import android.content.Context;
public class MyToast{
public static void showToast(Context context,String text ,String StrDuration ){
Toast.makeText(context,text, Toast.LENGTH_SHORT).show();
}
}
答案 0 :(得分:1)
你有没有进行构建? JavaScript-> Java调用的元数据不会在未触发构建的简单tns run android
中生成。
如果触摸platforms/android
,则不会激活构建,因为该目录未被监视。
tns build android
- 这将确保在platforms/android
进行手动更改时,将触发构建。
Offtopic:另外,我很高兴地分享您将能够在4.0版本的NativeScript中直接在App_Resources / Android目录中创建这些类,而不必担心在更换工作站时清理自定义类是否干净,清理项目