gpt4 book ai didi

blackberry - BitmapField 单击不适用于黑莓应用程序

转载 作者:行者123 更新时间:2023-12-02 00:32:20 25 4
gpt4 key购买 nike

我在水平方向上排列了 7 个 bimapfield 如果我单击它想要推送另一个屏幕的位图字段这是我的代码但是我没有得到另一个屏幕任何人都可以帮助我这个代码有什么问题

BitmapField bitmap1 = new BitmapField(
Bitmap.getBitmapResource("profile_n.png"),FOCUSABLE | DrawStyle.HCENTER)
{
protected void onFocus(int direction)
{
rollno=1;
this.getScreen().invalidate();
}
protected void onUnfocus()
{

}
protected boolean navigationClick(int status, int time){
UiApplication.getUiApplication().popScreen(getScreen());
UiApplication.getUiApplication().pushScreen(new AccMainScreen());
return true;
}
};

最佳答案

您可以使用自定义字段来保存图像并且表现得像按钮而不是位图字段。这是我建议的代码:

import net.rim.device.api.system.Bitmap;
import net.rim.device.api.ui.Field;
import net.rim.device.api.ui.Graphics;
public class CustomButton extends Field{

protected Bitmap icon;
protected int fieldWidth;
protected int fieldHeight;

public CustomButton (String iconSource,long style) {
super(style);
icon = Bitmap.getBitmapResource(iconSource);
fieldHeight = icon.getHeight();
fieldWidth = icon.getWidth();
}

public int getPreferredWidth() {
return fieldWidth;
}

public int getPreferredHeight() {
return fieldHeight;
}
protected void layout(int arg0, int arg1) {
setExtent(getPreferredWidth(), getPreferredHeight());
}
protected void drawFocus(Graphics graphics, boolean on){ }

protected void paint(Graphics graphics) {
graphics.fillRect(0, 0, fieldWidth, fieldHeight);
graphics.drawBitmap(0,0, fieldWidth, fieldHeight, icon, 0, 0);
}
protected boolean navigationClick(int status, int time) {
fieldChangeNotify(0);
return true;
}
}

您可以像使用默认按钮一样使用此按钮,并使用 setChangeListener 函数更改它的监听器。

CustomButton aButton = new CustomButton ("graphics/someIcon.png");
aButton.setChangeListener(new FieldChangeListener() {
public void fieldChanged(Field field, int context) {
UiApplication.getUiApplication().popScreen(getScreen());
UiApplication.getUiApplication().pushScreen(new AccMainScreen());
}
});

关于blackberry - BitmapField 单击不适用于黑莓应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6252335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com