0
ボタンに画像を追加するために、次のコードを使用しています。しかし、私は窓のビューからいくつかのボタンを手に入れました!ビューウィンドウにフィットさせるにはどうすればいいですか?Blackberry BitmapButtonFieldの中央揃え+ウィンドウビューのフィッティング
PLUS:私はそれらを垂直、水平に中央に置いて欲しいです。ボタンが15個あり、各行が3つ必要です。そして、画面の中央に??事前
public class BitmapButtonField extends ButtonField {
private Bitmap bitmap;
private Bitmap bitmapHighlight;
private boolean highlighted = false;
public BitmapButtonField(Bitmap bitmap, Bitmap bitmapHighlight) {
this(bitmap, bitmapHighlight, ButtonField.CONSUME_CLICK|ButtonField.FIELD_HCENTER|ButtonField.FIELD_VCENTER);
}
public BitmapButtonField(Bitmap bitmap, Bitmap bitmapHighlight, long style) {
super(style);
this.bitmap = bitmap;
this.bitmapHighlight = bitmapHighlight;
}
protected void layout(int width, int height) {
setExtent(getPreferredWidth(), getPreferredHeight());
}
public int getPreferredWidth() {
return bitmap.getWidth();
}
public int getPreferredHeight() {
return bitmap.getHeight();
}
protected void paint(Graphics graphics) {
super.paint(graphics);
int width = bitmap.getWidth();
int height = bitmap.getHeight();
Bitmap b = bitmap;
if (highlighted)
b = bitmapHighlight;
graphics.drawBitmap(0, 0, width, height, b, 0, 0);
}
}
ButtonFieldを縦横に中央に配置したい場合は、カスタムFieldManagerを実装して、必要に応じてButtonFieldインスタンスを配置する必要があります。あなたのBitmapButtonFieldクラスは大丈夫です。親マージャーが提供する最大許容幅を超えると、ビットマップの幅だけに問題が発生します。 – Rupak