Blackberry 黑莓:在非触摸设备中使用SpinboxField控件(导航问题)

Blackberry 黑莓:在非触摸设备中使用SpinboxField控件(导航问题),blackberry,blackberry-jde,Blackberry,Blackberry Jde,我是一个黑莓开发的新手,一直停留在关于Spinboxfield和非触摸设备的代码部分。如果有任何帮助、代码示例回复或相关教程的链接显示如何在非触摸设备(如blackberry curve或bold 3)上使用spinboxfield,我将不胜感激。当屏幕包含一个自旋字段和另一个控件(例如按钮)时,就会出现问题。从spinboxfield滚动到按钮是不可能的,因为一旦用户进入spinboxfieldmanager区域,他们就无法导航到button控件,并且用户被卡在spinboxfield控件内。

我是一个黑莓开发的新手,一直停留在关于Spinboxfield和非触摸设备的代码部分。如果有任何帮助、代码示例回复或相关教程的链接显示如何在非触摸设备(如blackberry curve或bold 3)上使用spinboxfield,我将不胜感激。当屏幕包含一个自旋字段和另一个控件(例如按钮)时,就会出现问题。从spinboxfield滚动到按钮是不可能的,因为一旦用户进入spinboxfieldmanager区域,他们就无法导航到button控件,并且用户被卡在spinboxfield控件内。我尝试过代码“SpinBoxFieldManager.setClickToLock(false)”,但这不起作用。示例代码如下所示

// an array of choices for the months.
      final String[] MONTHS = { "January", "February", "March", "April", "May", "June",
          "July", "August", "September", "October", "November", "December"};

      // an array of choices for years
      final String[] YEARS = { "2001", "2002", "2003", "2004", "2005", "2006", "2007",
          "2008", "2009", "2010", "2011", "2012", "2013", "2014"};

      // use a text spin box to display these choices
      SpinBoxField monthSpinBox = new TextSpinBoxField(MONTHS);
      SpinBoxField _yearsSpinBox = new TextSpinBoxField(YEARS);

      // create a manager for these spin boxes
      SpinBoxFieldManager spinBoxManager = new SpinBoxFieldManager();

      // add the spin boxes
      spinBoxManager.add(monthSpinBox);
      spinBoxManager.add(yearsSpinBox);
      spinBoxManager.setClickToLock(false);

      this.add(spinBoxManager);

      ButtonField mybutton = new ButtonField("MY Button", ButtonField.CONSUME_CLICK);
      mybutton.setChangeListener(this);

      this.add(mybutton);
显然,除了触摸设备外,使用键盘从spinboxfield滚动到按钮是不可能的

提前谢谢。

最佳做法:

  • 如果屏幕上出现其他几个组件,请避免使用旋转框

我会使用弹出式屏幕来显示旋转框,如页面上的图像所示。

感谢G B,奇怪的是,与iphone相比,旋转框不容易在同一屏幕上允许多个控件。我想问题不在于SpinBox本身,而在于它需要的尺寸,特别是在一些较小屏幕设备上使用时。例如,我认为在肖像模式火炬上使用多个旋转框没有问题。