2009-10-30 3 views
0

내 응용 프로그램은 ui.Manager 클래스를 확장합니다. enterEventDispatcher를 사용하지 않고 앱을 입력 할 수 있습니까? 응용 프로그램/응용 프로그램을 상속 받아야하므로enterEventDispatcher를 사용하지 않는 경우 블랙 베리 앱을 입력하는 방법은 무엇입니까?

다중 상속 솔루션입니까?
자바에서는 다중 상속이 가능하지 않습니다. 그렇다면 인터페이스 사용에 관한 것입니까?

답변

3

UiApplication (UI가있는 경우) 또는 Application (백그라운드 앱, 서비스 인 경우)에서 실제로 App을 상속해야합니다.
관리자 확장 프로그램이있는 경우 화면 확장 프로그램에 추가하십시오. 좋아요 :

import net.rim.device.api.system.Display; 
import net.rim.device.api.ui.UiApplication; 
import net.rim.device.api.ui.container.HorizontalFieldManager; 
import net.rim.device.api.ui.container.MainScreen; 

public class CenterButtonPanelApp extends UiApplication { 

    public CenterButtonPanelApp() { 
     pushScreen(new Scr()); 
    } 

    public static void main(String[] args) { 
     CenterButtonPanelApp app = new CenterButtonPanelApp(); 
     app.enterEventDispatcher(); 
    } 
} 

class Scr extends MainScreen { 
    public Scr() { 
     CenterButtonPanel centerPanel = new CenterButtonPanel(); 
     add(centerPanel); 
    } 
} 

class CenterButtonPanel extends HorizontalFieldManager { 
    int mWidth = Display.getWidth(); 

    public CenterButtonPanel() { 
     super(FIELD_HCENTER); 
    } 

    public int getPreferredWidth() { 
     return mWidth; 
    } 

    protected void sublayout(int maxWidth, int maxHeight) { 
     super.sublayout(mWidth, maxHeight); 
     setExtent(mWidth, maxHeight); 
    } 
} 
관련 문제