Java me 我怎么能在一个表单上有两个项目相邻,排成一行?
此代码生成以下内容: 我希望两个StringItem挨在一起,test与test对齐,依此类推Java me 我怎么能在一个表单上有两个项目相邻,排成一行?,java-me,midp,lcdui,Java Me,Midp,Lcdui,此代码生成以下内容: 我希望两个StringItem挨在一起,test与test对齐,依此类推 我还尝试将两个stringitems合并为一个,并在它们之间添加一个选项卡(\t)。但是,该选项卡变成了空白。JavaME使用行布局,这意味着您添加的每个项目都将添加到GUI的下一行。您需要一些类似于GridLayout的东西,这在JavaMe中是不可用的。也许你必须写你自己的项目,其中包含两个标签。类似这里有一个关于JavaME中Gridlayouts的stackoverflow问题:使用LWii
我还尝试将两个stringitems合并为一个,并在它们之间添加一个选项卡(\t)。但是,该选项卡变成了空白。JavaME使用行布局,这意味着您添加的每个项目都将添加到GUI的下一行。您需要一些类似于GridLayout的东西,这在JavaMe中是不可用的。也许你必须写你自己的项目,其中包含两个标签。类似这里有一个关于JavaME中Gridlayouts的stackoverflow问题:使用LWiit使用GridLayout
如果您在MIDP2上,除了已经设置的指令外,还可以设置
LAYOUT_2
。根据我对API规范的回忆,如果没有此标志,设备可能(甚至可能应该)会落入MIDP 1布局样式,忽略您宝贵的TOP
和SHRINK
还可以考虑使用Item.setPreferredWidth(containerForm.getWidth()/3)
明确表示您希望它不要太宽。愚蠢的设备认为字符串项的首选宽度是屏幕的宽度,而屏幕的首选宽度又以某种方式推翻了shrink指令,这种可能性似乎很小(但不是零)
Form containerForm=new Form(filename);
StringItem label1 = new StringItem("","Test\nTest2\nTest3");
StringItem label2 = new StringItem("","Test\nTest2\nTest3");
label2.setLayout(Item.LAYOUT_LEFT|Item.LAYOUT_TOP|Item.LAYOUT_SHRINK );
label2.setLayout(Item.LAYOUT_RIGHT|Item.LAYOUT_TOP|Item.LAYOUT_SHRINK );
containerForm.append(label1);
containerForm.append(label2);
display.setCurrent(containerForm);