2011-04-05 34 views
0

我想围绕两个文本框绘制边框,如果我单独离开主屏幕的背景颜色,这将起作用。客户的规格要求具有蓝色背景的配色方案。当EditFields被绘制到屏幕上时,它们显示为跨越屏幕的一个字段。有2个,因为每个都有两个焦点,假设它是两个,否则一切都有效。然后将两个EditFields添加到GridFieldManager以控制布局。 enter image description here围绕EditFields的边界 - 黑莓

我继承了EditFields并添加边框每个EXEditFields的,就像这样:

public class EXEditField extends EditField { 

    ... 


    private void init(MainScreen scrn) { 
       if (this.hasVirtualKeyboard()) 
        this.vkbd = scrn.getVirtualKeyboard(); 

       this.setMaxSize(this.MAX_CHARS); 

       this.setBorder(BorderFactory.createRoundedBorder(new XYEdges(0,0,0,0), Border.STYLE_SOLID)); 
       this.setBackground(BackgroundFactory.createSolidBackground(Color.WHITE)); 
       //this.setPadding(3, 3, 3, 3); 
       //this.setMargin(0, 3, 0, 3); 
      } 

    ... 

    } // end class 

任何帮助是极大的赞赏,因为没有在这样良好的黑莓参考文档得多。

+0

迈克有点不清楚要实现什么。你想在两个编辑字段中的每一个的边框?您是否还需要在焦点打开/关闭时更改编辑栏的边框/背景? – 2011-04-05 18:47:28

+0

@Arhimed我的不好。编辑澄清。没有任何关于如何显示字段被改变,或由于焦点改变或其他改变而试图改变。 – 2011-04-05 20:24:54

+0

对不起,我还不清楚。这是真的:'你试图在EXEditField周围显示边框,但它不显示边框'?还是其他什么? – 2011-04-05 21:34:32

回答

2

正常,检查this

它是一个开源库,提供一些自定义BlackBerry字段,包括EditField,自定义边框。您应该能够修改代码以显示您想要的边框。

+0

看起来很有希望。 – 2011-04-06 14:31:02

+0

@Arihmed我应该让你快速拨号。我想你回答了我在这里出的每一个黑莓问题。 – 2011-04-06 18:52:11

+0

@Mike D::))))) – 2011-04-06 19:17:32

0

你可以尝试自定义EditField中内改变paintBackground方法,尝试把这个代码到你的EditField中类:

​​