2013-07-31 3 views
0

내가 Mosync 3.3.1에서 OpenGL ES 2.0을 사용하는 앱을 만들고 이상적으로 화면이 기울어 진 방향으로 화면을 회전시키고 싶습니다. 그러나 maScreenSetSupportedOrientations()를 사용하여 동적 또는 가로로 설정하면 가로로 회전하려고 할 때 응용 프로그램이 중단됩니다. 이 버그가 수정해야합니까 아니면 내가 뭔가 잘못하고있는거야? 내 코드를 넥서스 7 태블릿으로 보냈습니다. 내 코드의 init 함수의 호출 시작MoSync 3.3.1, 충돌을 일으키는 가로 화면 방향

임 :

maScreenSetSupportedOrientations(MA_SCREEN_ORIENTATION_DYNAMIC); 
maScreenSetOrientation(MA_SCREEN_ORIENTATION_LANDSCAPE); 

내 전체 코드는 여기에 있습니다 : http://codetidy.com/6378/

+0

* maScreenSetSupportedOrientations() * 함수는 가능한 방향을 가능하게하고 실제 동적은 * maScreenSetOrientation() *을 사용하여 호출됩니다.이 작업을 수행하는 코드 부분을 게시 할 수 있습니까? –

+0

MoSync 문서에서 _maScreenSetOrientation() _이 가치가 떨어지고 대신 _maScreenSetSupportedOritentaions() _를 사용합니다. 나는 그것을 어쨌든 추가하려고 시도했지만 여전히 도움이되지 못했습니다. Ive는 이제 오류가있는 코드 줄을 표시하도록 질문을 업데이트하고 전체 코드에 대한 링크를 추가했습니다. –

+0

좀 더 디버깅해야 할 것 같아서 (주석 부분과 그 부분이 작동하는지 확인해보십시오.) 개인적으로는 그렇지 않아야하는 부분에서 OpenGL 드로잉과 관련이 있다고 생각합니다. –

답변

0

그것은 나를

extern "C" int MAMain() { // Declare MAMain function as "C" 
maScreenSetSupportedOrientations(MA_SCREEN_ORIENTATION_LANDSCAPE); 
Moblet::run(new MyGLMoblet()); 
return 0; 

대신

작동
void init() { // Screen Size 

    mWidth = EXTENT_X(maGetScrSize()); 
    mHeight = EXTENT_Y(maGetScrSize()); 

    maScreenSetSupportedOrientations(MA_SCREEN_ORIENTATION_PORTRAIT|MA_SCREEN_ORIENTATION_LANDSCAPE); 
    maScreenSetOrientation(MA_SCREEN_ORIENTATION_LANDSCAPE);