Layout 在blackberry manager上设置isFocusable时引发异常
在我的blackberry应用程序中,我有一个管理器,可以控制屏幕字段的布局。这是在需要自定义布局时执行操作的标准方式 现在,我使用的一个“字段”本身就是一个管理器,它可以很好地布局一系列控件。将这个“字段”称为“summaryField”,因为它为我总结了数据。这一切都表现得很好 但是,当我重写“summaryField”的Layout 在blackberry manager上设置isFocusable时引发异常,layout,blackberry,Layout,Blackberry,在我的blackberry应用程序中,我有一个管理器,可以控制屏幕字段的布局。这是在需要自定义布局时执行操作的标准方式 现在,我使用的一个“字段”本身就是一个管理器,它可以很好地布局一系列控件。将这个“字段”称为“summaryField”,因为它为我总结了数据。这一切都表现得很好 但是,当我重写“summaryField”的isFocusable()成员时,我开始得到一个空指针异常 有人知道为什么会抛出此异常吗 public class SummaryField extends Manager
isFocusable()
成员时,我开始得到一个空指针异常
有人知道为什么会抛出此异常吗
public class SummaryField extends Manager
{
protected void drawFocus(Graphics graphics, boolean on) {
super.drawFocus(graphics, on);
}
protected void onFocus(int direction) {
super.onFocus(direction);
}
protected void onUnfocus() {
super.onUnfocus();
}
public boolean isFocusable() {
return true;
}
}
如果我不得不猜测的话,我会说您的管理器中可能不包含任何可聚焦字段,因此您为isFocusable()硬编码的“true”返回值在SummaryField的真实状态上撒谎。记住,管理者本身不能有“焦点”,只能有其中的字段。你能提供更多关于NPE的细节吗,比如堆栈跟踪?这似乎已经做到了。如果经理的文档能够详细说明这一点,那就太好了。