Codenameone 无法显示toast消息

Codenameone 无法显示toast消息,codenameone,Codenameone,我已下载并使用以下URL中的代码 显示toast消息 public class MyApplication { private Form current; private static Object context; public void init(Object context) { MyApplication.context = context; } public static Object getContext() { return context; } publ

我已下载并使用以下URL中的代码

显示toast消息

public class MyApplication {

private Form current;

private static Object context;

public void init(Object context) {
    MyApplication.context = context;
}

public static Object getContext() {
    return context;
}

public void start() {
    if (current != null) {
        current.show();
        return;
    }

    showLoginForm();
}

public void stop() {
    current = Display.getInstance().getCurrent();
}

public void destroy() {
}

private void showLoginForm() {

    Form form = new Form("WelCome ...");

    Button b = new Button(" Login ");

    b.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent evt) {
            Log.p(" Came hgere ");
            Log.p(" ***    " + MyApplication.getContext());
            Toast.makeText(MyApplication.getContext(), "HI", Toast.LENGTH_LONG);
        }
    });
    form.addComponent(b);
    form.show();
}}
最初我得到了NativeToastImpl未实现的错误。我已经解决了我的项目中与本机相关的代码。现在系统抛出运行时异常“此平台不支持Toast”

这是我显示toast消息的代码

public class MyApplication {

private Form current;

private static Object context;

public void init(Object context) {
    MyApplication.context = context;
}

public static Object getContext() {
    return context;
}

public void start() {
    if (current != null) {
        current.show();
        return;
    }

    showLoginForm();
}

public void stop() {
    current = Display.getInstance().getCurrent();
}

public void destroy() {
}

private void showLoginForm() {

    Form form = new Form("WelCome ...");

    Button b = new Button(" Login ");

    b.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent evt) {
            Log.p(" Came hgere ");
            Log.p(" ***    " + MyApplication.getContext());
            Toast.makeText(MyApplication.getContext(), "HI", Toast.LENGTH_LONG);
        }
    });
    form.addComponent(b);
    form.show();
}}
我已经使用NetBeans IDE进行开发,OS:Windows8.1

请让我知道我在这个代码中做错了,并且

是否有其他方法可以使用codename one显示toast消息

提前感谢

您错过了Toast上的
show()
方法

Toast.makeText(MyApplication.getContext(), "HI", Toast.LENGTH_LONG).show();

请编辑以下代码并在设备中测试toast。Toast在emulator中不可用

public void init(Object context) {
   this.context = context;
}

b.addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent evt) {
        Log.p(" Came hgere ");

        Toast.makeText(context, "HI", Toast.LENGTH_LONG);
    }
});

您需要将cn1lib放入libs目录并刷新,而不是复制本机文件:据我所知,并非所有平台都支持此库,您需要测试toast是否适用于给定平台。您还可以查看新的代码名One
ToastBar
:我已将代码更改为Toast.makeText(上下文“HI”,Toast.LENGTH_LONG).show();