我创建了一个 HorizontalFieldManager 并在其中添加了 BitmapFields。
在 Blackberry Storm 中,Display.getWidth() 是 480。我想使用前 450 在屏幕的 LHS 添加一些 BitmapFields,我在运行时创建这些 BitmapFields,并在屏幕的 RHS 开始添加 2 个 BitmapFields。
我想在开始时显示的 2 个 BimapFields 添加到 Constructor 和我在运行时创建的其他 BitmapFields 中添加了诸如..
class MyCanvas extends MainScreen
{
MyCanvas()
{
hfm_BitmapField = new HorizontalFieldManager(){
protected void sublayout(int maxWidth, int maxHeight) {
super.sublayout(maxWidth, maxHeight);
setExtent(Display.getWidth()-30, 60);
}
};
startBitmap = Bitmap.getBitmapResource("start.png");
startBitmapField = new BitmapField(startBitmap, BitmapField.ACTION_INVOKE | BitmapField.FIELD_HCENTER | BitmapField.FIELD_RIGHT);
hfm_BitmapField.add(startBitmapField);
endBitmap = Bitmap.getBitmapResource("end.png");
endBitmapField = new BitmapField(endBitmap, BitmapField.ACTION_INVOKE | BitmapField.FIELD_HCENTER | BitmapField.FIELD_RIGHT);
hfm_BitmapField.add(endBitmapField);
drawBitmap();
}
public void drawBitmap()
{
bitmap[i] = new Bitmap(50, 50);
Graphics g = new Graphics(bitmap[i]);
g.drawLine(5,5,25,25);
bitmapField[i] = new BitmapField(bitmap[i]);
synchronized(UiApplication.getEventLock()) { hfm.add(bitmapField[i]); }
}
我想要 RHS 的 startBitmapField 和 endBitmapField 和 bitmapField[i],我在运行时在 HorizontalFieldManagers 的 LHS 创建。
我正在考虑添加 2 个 HorizontalFieldManagers。1 表示 bitmapField[i] & 1 表示 startBitmapField 和 endBitmapField。但是如何连续添加 2 个 HorizontalFieldManager 或任何其他 FieldManager?
有什么解决办法吗?怎么做?