我正在尝试将我的LWUIT应用程序移植到Codename.
我在LWUIT中使用过RMS,现在显然我必须将其转换为存储.
我不明白Storage类如何在Codename中工作,而codename的文档也没有任何关系.
1)存储文件的结构是什么?
- >在J2ME中RecordStore,您将记录像表一样捆绑在一起.每一行,对应一条记录.每条记录都有唯一的记录ID,您可以使用此记录ID访问记录.每条记录都可以存储一些数据.
这如何映射到Storage类?
2)我希望在我的存储中存储一些记录,我该怎么做?
文件说:
static Storage getInstance()
Returns the storage instance or null if the storage wasn't initialized using a call to init(String) first.
Run Code Online (Sandbox Code Playgroud)
- >在LWUIT中,它就像Storage.init(storageName).; 但是,没有一个代号为init的init!如何在Codename中打开存储?
3)如果我尝试打开一个不存在的存储文件,会发生什么(RMS给出例外)?
我想在我的Codename One App中添加一个帮助屏幕.由于文本比其他字符串更长,我想将它放在一个单独的文件中并将其添加到app-package.
我该怎么做呢?我在哪里放置文本文件,如何轻松地将其读入字符串?
(我已经知道如何将字符串放入表单内的文本区域)
有没有办法检查我的代码是什么Os代号运行一个应用程序,无论是黑莓,Android,iOS,Windows,Symbian等...?
我正在重新审视一些较旧的项目,并且使用最新库的新版本为我的滚动容器和列表添加了一个丑陋的滚动条.
我为"Scroll"和"ScrollThumb"添加了主题条目,透明度为0,边框为空.它删除了一些但不是全部,在Designer中可见的滴答或无标记滚动似乎没有太大作用.
这发生在过去几周的某个时间.我无法找到导致它的原因的模式.(我认为它可能是v3.5中的新内容).
我正在使用Codename One开发我的第一个移动应用程序.我试图让一个容器对正常的点击动作事件作出反应.我有一个容器(注意这不是一个swing容器,而是一个代号为一个容器),它包含一个可滚动的Y_axis布局框中的列表元素.到现在为止还挺好.这些元素本身就是容器,它们包含标签,图像和星形滑块.
现在,当用户点击整个元素容器中的任何位置时,我想切换到另一个表单以显示该条目的详细信息.但是,容器不提供添加动作侦听器.只是实现actionlistener接口也无济于事.接下来的问题是,一个容器的代号也没有mouselistener,因为移动应用程序没有鼠标点击.
那么,我如何识别点击容器?
谢谢和最好的问候
如何隐藏/删除表单上的标题栏?
我尝试通过创建一个自定义的Form类并重写shouldPaintStatusBar()来做到这一点,但它不起作用.
整个代码是:
public class SplashScreenOp {
private Resources theme;
private Form splashForm;
public Form getForm() {
return splashForm;
}
public SplashScreenOp(Resources theme) {
super();
this.theme = theme;
}
public final void show() {
splashForm = new Form(new BorderLayout());
Image splashScreenImage = theme.getImage("splashscreen.png");
ScaleImageLabel scaleImageLabel = new ScaleImageLabel(splashScreenImage);
splashForm.add(BorderLayout.CENTER, scaleImageLabel);
splashForm.show();
}
}
Run Code Online (Sandbox Code Playgroud)
由于这是一个启动页面,因此只应显示图像.即.没有标题栏.
由于代号未实现完整的Java API,是否存在另一种对日期列表进行排序的工作方式?
我在下面尝试过,但都无法编译。
datesList.sort(Date::compareTo); // Failed
Run Code Online (Sandbox Code Playgroud)
错误:无效的方法引用datesList.sort(Date :: compareTo);
// Failed
Collections.sort(datesList, new Comparator<Date>(){
public int compare (Date d1, Date d2){
return d1.compareTo(d2);
}
});
Run Code Online (Sandbox Code Playgroud)
错误:找不到符号返回d1.compareTo(d2);
获取以下月份的最后一天的问题相同:
cal.getActualMaximum(Calendar.DATE);
Run Code Online (Sandbox Code Playgroud)
错误:找不到符号cal.set(Calendar.DATE,cal.getActualMaximum(Calendar.DATE));
我对添加按钮或容器的布局约束感到困难.我添加以下顺序时出现上述错误.
Container1.setLayout(new BorderLayout()); // Container1 has Borderlayout as Layout Property .
Run Code Online (Sandbox Code Playgroud)
我的Button有一个LayoutConstraint属性:West.当我将组件按钮添加到Container1时,我得到了上述错误..
请建议我如何设置LayoutConstraint属性..
我是CodenameOne的新手,很棒的平台.
我看到一个名为"codenameone_settings.properties"的文件我添加了一个名为"myapi"的新属性," http:// localhost:3000 "
我该如何访问这个属性?我试过了
Preferences.set("myapi", "nono")
Run Code Online (Sandbox Code Playgroud)
当我做:
System.out.println(Preferences.set("myapi", "nono"));
Run Code Online (Sandbox Code Playgroud)
我得到"nono"