在同样大小的黑莓上制作按钮

时间:2012-07-03 08:24:04

标签: blackberry buttonfield

我希望左边有两个相同尺寸的按钮,右边有另一个按钮。 这是我的代码,但我得到的按钮宽度比其他

hManager = new HorizontalFieldManager(Field.USE_ALL_WIDTH|FIELD_VCENTER);
hManager.setPadding(15, 0, 15, 15);

B1= new ButtonField("B1", Field.FIELD_LEFT | ButtonField.CONSUME_CLICK ) {

    public int getPreferredWidth() {
      return 200;
    }
};

B2= new ButtonField("B2", Field.FIELD_RIGHT | ButtonField.CONSUME_CLICK ) {

    public int getPreferredWidth() {
        return 200;
    }
};

hmanager.add(B1);
hmanager.add(B2);

3 个答案:

答案 0 :(得分:2)

执行类似

的操作
public int getPreferredWidth() {
    return (Display.getwidth()/2)-20 ;               
}

ButtonField

答案 1 :(得分:0)

实际上问题是,例如,考虑屏幕宽度是240.但是根据你的代码,你的第一个按钮的宽度是200.所以240-200。现在剩下的屏幕宽度是40。所以它不会考虑为第二个按钮给出的200宽度。因此,由于宽度不够,默认情况下它需要剩余的宽度(不是您给定的宽度)。因此,您必须根据屏幕宽度设置按钮宽度。而且在你的代码中Field.Field_Right不起作用。在垂直管理器中,只能设置水平属性。

答案 2 :(得分:0)

不要把绝对值,只是部分因为黑莓屏幕大不相同

@Bbdev解决方案是代码中的答案