下面的代碼定義了一個帶有兩個字段的水平字段管理器。我怎樣才能修改代碼,以便只在被添加的兩個字段上設置背景而不是整個管理器。請注意,即時通訊不會嘗試將單個背景圖像添加到每個字段,而是跨越兩個字段的共享背景圖像。自定義HorizontalFieldManager中兩個字段後面的背景圖像
LabelField label = new LabelField("name");
TextField e = new TextField(Field.FOCUSABLE);
final Bitmap b = Constants.SETTINGS;
final Background bg = BackgroundFactory.createBitmapBackground(Constants.SETTINGS);
HorizontalFieldManager manager = new HorizontalFieldManager()
{
public void sublayout (int width, int height)
{
Field field;
int x = 0;
super.sublayout(b.getWidth(), height);
super.setExtent(b.getWidth(), height);
for (int i = 0; i < getFieldCount(); i++)
{
field = getField(i);
layoutChild(field, Display.getWidth()/2, height);
setPositionChild(field, x, 10);
x += Display.getWidth()/2;
}
}
};
manager.add (label);
manager.add (e);
add (manager);
我從代碼中瞭解到,您正在嘗試添加兩個字段,每個字段佔用一半的屏幕?在提供可能與您想要做的事完全無關的解決方案之前,請先檢查一下。 – jprofitt 2011-04-19 16:48:10
那是正確的。標籤字段和文本字段每個都佔用屏幕一半的常見圖像背景。我附上了所需效果的截圖。謝謝。 – 2011-04-19 20:00:58