2010-01-21 3 views
0

블랙 베리 앱에는 내 화면의 필드 레이아웃을 제어하는 ​​관리자가 있습니다. 이것은 사용자 정의 레이아웃을 원할 때 일을하는 표준 방법입니다.블랙 베리 매니저에서 isFocusable을 설정하면 예외가 발생합니다.

이제 "필드"중 하나가 자체적으로 일련의 컨트롤을 멋지게 배치하는 관리자입니다. 이 필드를 "summaryField"라고 부르면 데이터가 요약됩니다. 이 모든 것이 멋지게 표현됩니다.

그러나 "summaryField"의 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; 
    } 
} 
+0

스택 추적과 같은 NPE에 대한 자세한 정보를 제공 할 수 있습니까? –

답변

1

, 나는) 당신의 관리자는 아마 때문에 isFocusable (대한 하드 코딩 "true"를 반환 값을 거기에 모든 포커스 필드를 포함하고 있지 않음을 말하고 싶지만 진정한 상태에 대해 거짓말 요약 필드의. 관리자 자신은 "집중"할 수없고 그 안의 필드 만 기억할 수 있습니다.

+0

그 트릭을 한 것으로 보인다. Manager 설명서에서 철자가 틀린 것이 좋을 것입니다. – yamspog