标签: codenameone

在Codename One项目中本地保存图像

我已按照此视频中创建相机捕获页面的教程进行操作:http://www.youtube.com/watch?v = nF4eqzVcsic

所以我的代码目前看起来像这样:

protected void onCamera_CaptureButtonAction(Component c, ActionEvent event) {
    String i = Capture.capturePhoto();
    if (i != null) {
        try {
            Image img = Image.createImage(i).scaledHeight(500);
            findCameraLabel().setIcon(img);

        } catch (Exception ex) {
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

我看了一下CameraDemo应用程序,但似乎找不到任何正在保存的文件.

我基本上只想将拍摄的照片保存在src文件夹中.

任何帮助将不胜感激.阿里

codenameone

7
推荐指数
1
解决办法
1886
查看次数

可以在Codename One本机代码中使用swift代码而不是Objective-C

我需要在我的Codename One应用程序中插入本机代码.我是iOS编程的全新手,所以我需要学习Objective-C.但是我读到Swift是Objective-C的继承者,我觉得Swift语法更舒服.但我不知道是否在Codename One中支持Swift.在查看由Codename One生成的iOS源代码时,虽然我不是100%肯定,但它看起来像C代码(我可能错了).

在他的博客上,Shannah(来自Codename One)写道

Codename One目前将所有内容编译为普通的旧C代码,因此我们在很大程度上不会受到这种更改的影响 - 尽管会有一些本机部分使用需要更新的Objective-C.幸运的是,如果您是Codename One用户,则无需关注这些细节,因为您使用的是Java.

我不清楚这就是为什么我在询问是否可以在Codename One本机代码中使用Swift代码?

非常感谢帮助我澄清这个话题!

干杯

native-code ios codenameone swift

7
推荐指数
1
解决办法
359
查看次数

我可以将Kotlin与Codename One一起使用吗?

我是Kotlin的忠实粉丝,并希望将它与Codename One一起使用而不是Java.由于Kotlin与Java无缝连接,我能用它来构建一个带有Codename One的应用程序吗?

kotlin codenameone

7
推荐指数
1
解决办法
354
查看次数

GoogleMap快照方法返回白色图像

我正在尝试使用此处提到的API获取Google Maps V2地图的屏幕截图,但这似乎总是返回底部带有Google徽标的白色图片.如果它不是徽标,我会确定这根本不起作用,但徽标意味着发生了一些事情并且地图没有显示.这大致就是我正在做的事情:

mv.setVisibility(View.VISIBLE);
mv.getMap().snapshot(new GoogleMap.SnapshotReadyCallback() {
    public void onSnapshotReady(Bitmap snapshot) {
        synchronized(finished) {
            finished[0] = snapshot;
            finished.notify();
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

我尝试了多种不同的方法,包括将图像绘制到不同的图像和各种其他尝试.

唯一的主要区别是我使用MapView而不是MapFragment,因为我在这里无法切换到使用片段的一些技术问题.

android google-maps codenameone google-maps-android-api-2

6
推荐指数
1
解决办法
3639
查看次数

代表一个不在ios上工作的本地通知

我添加了一个本地通知,所以当我的应用程序在打开时进行推送时,仍然会有弹出窗口和声音.它在Android上工作正常,但在iOS上本地通知根本没有出现.

推送通知在两个平台上都运行良好.

这是我应该触发通知的推送回调中的代码(如果应用程序处于打开状态):

if(Display.getInstance().getCurrent() != null) {
    LocalNotification n = new LocalNotification();
    n.setId(value);
    n.setAlertBody(value);
    n.setAlertTitle({app name});
    n.setBadgeNumber(1);
    Display.getInstance().scheduleLocalNotification(n, System.currentTimeMillis() + 1000, LocalNotification.REPEAT_NONE);
}
Run Code Online (Sandbox Code Playgroud)

java notifications ios codenameone

6
推荐指数
1
解决办法
333
查看次数

以编程方式代理一个应用程序版本号

我试图在运行时从代码中获取应用程序版本

如何获得codename1.version来自codenameone_settings.properties编程

codenameone

6
推荐指数
1
解决办法
224
查看次数

手动触发Pull以刷新Container

如果我想在加载表单后手动触发Codename One中Container上的Pull to Refresh.如果有人有任何想法,请告知.

codenameone

6
推荐指数
1
解决办法
110
查看次数

无法安装公司应用程序Codename One Windows手机

我成功地能够从CN1服务器为Windows 8创建和下载构建.

我还可以使用"Windows Phone Developer Registration"实用程序解锁我的Windows手机(Microsoft Lumia 640 Windows OS 8.1).

见下图. 在此输入图像描述

但是我仍然得到这个错误,有什么建议吗?

为了测试,我创建了一个只有文本字段的虚拟应用程序,即使是那个简单的应用程序也无效.

谢谢.

codenameone windows-phone-8.1

5
推荐指数
1
解决办法
126
查看次数

如何在asciidoc fop中合并甚至禁用脚注链接

我有一个相当大的asciidoc文档,我为我们的开发人员指南动态翻译为PDF.由于doc通常引用我们的开发人员指南中记录的Java类,因此我们将它们直接转换为文档中的链接,例如:

In this block we create a new 
https://www.codenameone.com/javadoc/com/codename1/ui/Form.html[Form] 
named `hi`. 
Run Code Online (Sandbox Code Playgroud)

这在大多数情况下工作得相当好,并且在HTML中看起来很棒,因为对类的每个引用都直接导致其JavaDoc使得引用/引导过程更加简单.

但是,当我们生成PDF时,我们最终会在某些页面上显示这样的内容:

脚注地狱

通常情况下,我不会介意前一页中的大量脚注甚至重复.但是,在这种情况下,Container的链接出现3次.

我可以删除一些链接,但我不愿意,因为它们在网络版本上有很多意义.因为我也不知道分页会落在哪里,所以我宁愿不自己做.

这看起来像某个地方的错误,如果链接相同,链接的脚注应该只生成一次.

我可以删除文档中的所有链接脚注,如果这是要支付的价格,虽然我宁愿能够根据具体情况这样做,所以一些链接仍然可以打印

pdf-generation asciidoc apache-fop codenameone

5
推荐指数
1
解决办法
291
查看次数

调试gradle的目标,相当于run {}块,用于传递参数

我正在尝试移植Codename One客户端构建,这是非常自定义的ant脚本,可以使用gradle.当您在模拟器上运行Codename One应用程序时,您没有运行应用程序主类,而是类似于:

java -classpath CodenameOneJarList com.codename1.impl.javase.Simulator nameOfTheMainClassForTheApp
Run Code Online (Sandbox Code Playgroud)

为了在gradle中执行此操作,我编辑了基本构建脚本,如下所示:

apply plugin: 'java'
apply plugin: 'application'
mainClassName = "com.codename1.impl.javase.Simulator"

// for netbeans
ext.mainClass = 'com.codename1.impl.javase.Simulator'
Run Code Online (Sandbox Code Playgroud)

然后在底部我做了这个:

run {
    args 'com.mycompany.myapp.Main'
}
Run Code Online (Sandbox Code Playgroud)

这按预期工作,并在IDE(NetBeans)中按下运行时启动了模拟器.我不确定这是否是"正确的事",如果它可以在其他IDE中使用.

然后,当我尝试在调试器中启动时,由于我猜测run目标未被调用,因此没有传递参数?

我试过这样做:

debug {
    args 'com.mycompany.myapp.Main'
}
Run Code Online (Sandbox Code Playgroud)

哪个明显失败了.我不确定将参数传递给调试器的位置?

这是通过gradle标准化的吗?

关于争论的传递,我是否正确的方向?

"运行"声明性语法映射到什么?如何找到其他潜在的声明性块类型?

不幸的是谷歌搜索运行/调试等基础知识不会产生有用的东西.

java gradle codenameone build.gradle

5
推荐指数
1
解决办法
602
查看次数