在水平字段管理器中添加垂直字段管理器,该管理器本身位于垂直字段管理器 - Blackberry中

时间:2012-05-15 20:00:21

标签: layout blackberry button user-interface layout-manager

我在水平字段管理器中创建了3个按钮,以便它们在屏幕中心水平对齐。

这是在包含3个选项卡的tabpane管理器上完成的。该实现位于窗格的第一个选项卡中。此窗格中保存的所有代码都位于垂直字段管理器中。

我已经通过以下链接创建按钮 How to put two buttons in Horizontal field manager in blackberry for any device?

它建议在水平字段管理器中添加一个垂直字段管理器。在我的代码中,还有另一个垂直字段管理器,它持有这个水平字段管理器。

这是我的代码:

// setup the tab model with 3 tabs
  final PaneManagerModel model = new PaneManagerModel();
  model.enableLooping( true );

// setup the first tab   
   VerticalFieldManager vfm = new VerticalFieldManager( 
      Field.USE_ALL_HEIGHT | Field.USE_ALL_WIDTH |
      Manager.NO_VERTICAL_SCROLL | Manager.NO_HORIZONTAL_SCROLL );
  LabelField lbl = new LabelField( "Content for tab 1", Field.FOCUSABLE );
  vfm.add( lbl );

//Add one button to the form normal way
 ButtonField gl = new ButtonField(" Group ",ButtonField.FIELD_HCENTER | ButtonField.CONSUME_CLICK);
     // sms.setChangeListener(new FieldChangeListener());
     gl.setChangeListener(new FieldChangeListener() 
      {
            public void fieldChanged(Field field,int context) 
            {
                  model.getView().jumpTo(1,PaneManagerView.DIRECTION_NONE); 
            }
       });
      vfm.add(gl)


//Second button
//SMS send from form
      ButtonField sms = new ButtonField(" Sms ",ButtonField.FIELD_HCENTER | ButtonField.CONSUME_CLICK);
     vfm.add(sms);


//Adding horizontal field manager(MAIN IMPLEMENTATION)
HorizontalFieldManager buttonPanel = new HorizontalFieldManager(Field.FIELD_HCENTER | Field.USE_ALL_WIDTH);
    buttonPanel.add(vfm);//Gives error at this point
   // buttonPanel.add(sms);
    buttonPanel.add(new ButtonField(" Send Mail "));
    add(buttonPanel);


 //Ideal way posted on that link
VerticalFieldManager vfm = new VerticalFieldManager(USE_ALL_WIDTH);
    vfm.add(new ButtonField("button2",Field.FIELD_RIGHT));

    HorizontalFieldManager hfm = new HorizontalFieldManager();
    hfm.add(new ButtonField("button1"));
    hfm.add(vfm);
    add(hfm);

我对这里使用的布局管理器感到困惑。 请指导。谢谢

0 个答案:

没有答案