0
VerticalFieldManagerの背景に非常に奇妙な問題があります。スクロールする必要があるフィールドを格納|(VERTICAL_SCROLLBAR VERTICAL_SCROLL) VerticalFieldManager:1人の子供を持つpaintBackground方法で背景を描く|(NO_HORIZONTAL_SCROLL NO_VERTICAL_SCROLL)BlackBerry 6.0ビットマップの背景paintBackgroundのスクロールに関する問題
は私がマネージャーを持っています。
VerticalFieldManagerをスクロールすると、マネージャのバックグラウンドが移動し始めます(およびその途切れ)。 setBackgroundを使って背景イメージを設定すると、すべて正常に動作しますが、4.5+のサポートが必要です。誰もこれを前に経験しましたか?
私の画面クラス:
public class RMainScreen extends MainScreen {
EncodedImage fon = EncodedImage.getEncodedImageResource("background_480x360.png");
HorizontalFieldManager content;
public RMainScreen() {
super(USE_ALL_WIDTH | USE_ALL_HEIGHT | NO_VERTICAL_SCROLL | NO_VERTICAL_SCROLLBAR);
content = new HorizontalFieldManager(HorizontalFieldManager.USE_ALL_WIDTH | HorizontalFieldManager.NO_VERTICAL_SCROLL | HorizontalFieldManager.NO_VERTICAL_SCROLLBAR) {
protected void paintBackground(Graphics g) {
g.drawImage(0, 0, fon.getWidth(), fon.getHeight(), fon, 0, getLeft(), getTop());
}
};
VerticalFieldManager list = new VerticalFieldManager(VerticalFieldManager.USE_ALL_WIDTH | VerticalFieldManager.VERTICAL_SCROLL | VerticalFieldManager.VERTICAL_SCROLLBAR);
for(int i=0; i<40; i++) {
list.add(new LabelField("item from list " + i, LabelField.FOCUSABLE) {
protected void paint(Graphics g) {
g.setColor(Color.WHITE);
super.paint(g);
}
});
}
content.add(list);
add(content);
}
}
代わりにgraphics.drawBitmap()を使って試してみましたが、PNGをビットマップとして取得しましたか? – jprofitt
はい、それは助けません... – edredos
プラットフォーム6のために起こりますスムーズなスクロールリストのためのメソッドが追加されています – edredos