代表一个文本区域不占用全宽

时间:2014-01-29 13:22:27

标签: java android codenameone

似乎这是系统中的某个错误,但是为了我的错,我有一些设置没有放入。

_reviewEnCustom.setFocusable(false);
_reviewEnCustom.getStyle().setPadding(0, 0, 0, 0);
_reviewEnCustom.getStyle().setMargin(0, 0, 0, 0);
_reviewEnCustom.setGrowByContent(true);
_reviewEnCustom.setShouldCalcPreferredSize(true);
_reviewEnCustom.setUIID("CafeDetailsDescription");

这是我的文本区域,但问题是它没有占据宽度,它在页面的1/3处停止并且突破到新行。 但是,当editable设置为true并尝试编辑时,宽度似乎是正确的!!

也是issue 303 : Text Area faults

的曲目

最后,图片..... screen shot。!

我修改了代码,通过设置列号,从15到500,没有效果。

TextArea _reviewEnCustom = new TextArea(1,100);
            _reviewEnCustom.setText(reviewen);
            _reviewEnCustom.setEditable(false);
            _reviewEnCustom.setFocusable(false);
            _reviewEnCustom.getUnselectedStyle().setPadding(0, 0, 0, 0);
            _reviewEnCustom.getUnselectedStyle().setMargin(0, 0, 0, 0);

            _reviewEnCustom.setGrowByContent(true);
            _reviewEnCustom.setUIID("CafeDetailsDescription");
            Container _reviewenContainer = new Container(_reviewenLayout);

            _reviewenContainer.addComponent(_constraint,_reviewEnCustom);
            _reviewenContainer.setUIID("CafeDetailsSubContainer");


            _detailsContainer.addComponent(lblTitle);
            _detailsContainer.addComponent(lblLocation);
            _detailsContainer.addComponent(_reviewenContainer);

使用列宽仍然无效。我试图检查dicussion论坛,没有帮助。得到最新的源代码并构建它,textarea宽度不会消耗显示宽度。

仅当我将其设置为可编辑时,单击“编辑”才会消耗宽度。否则它会在屏幕的1/3处中断。

有任何帮助吗?从我猜测的是在TextArea类本身设置宽度的方式。但我希望我错了。

  大约2个月前来到了一个大厦,离开了旅行,那个   如果大小是字体,字体将完全响应底层库   在“毫米”中,它们应该嵌入字体而不是位图字体。

     

永远不要在Codenameone中使用位图字体!有一种非常简单的方法   嵌入字体!

1 个答案:

答案 0 :(得分:0)

这与你指出的错误完全无关。您只需要为文本区域定义足够大的列数。

您对getStyle()&的使用情况setShouldCalcPreferredSize()也不正确。后者不应该被用户代码调用,前者应该避免,你应该使用显式样式,例如getUnselectedStyle()