2011-03-16 2 views
6

나는 아무것도 공상하는 것에 대해 말하는 것이 아닙니다. 사용자가 기기를 돌릴 때 표준 윈도우와보기가 회전되기를 바랍니다.오리엔테이션 변경을 간단하게 처리하는 방법은 무엇입니까?

Ti.Gesture.addEventListener('orientationchange', function(e) { 
    Titanium.API.info('Orientation changed'); 
}); 

편집 :

var window = Ti.UI.createWindow({ 
    orientationModes: [ 
     Ti.UI.LANDSCAPE_LEFT, 
     Ti.UI.LANDSCAPE_RIGHT, 
     Ti.UI.PORTRAIT, 
     Ti.UI.UPSIDE_PORTRAIT 
    ] 
}); 

window.open(); 

당신은 다음과 같이 청취자와 방향 변경에들을 수 있습니다 :

답변

10

당신은 그것을 지원해야 방향 창을 알려줄 필요가 나는 (모든 시도를 해본 적이 없지만) tiapp.xml에서 이것을 설정할 수도 있다고 생각합니다. tiapp.xml에는 모든 창에 자동으로 적용된다는 이점이 있습니다.

<orientations device="iphone"> 
    <orientation>Ti.UI.LANDSCAPE_LEFT</orientation> 
    <orientation>Ti.UI.LANDSCAPE_RIGHT</orientation> 
    <orientation>Ti.UI.PORTRAIT</orientation> 
    <orientation>Ti.UI.UPSIDE_PORTRAIT</orientation> 
</orientations> 
+0

tiapp.xml 구성 변경 사항에 맞다고 생각합니다. 그게 내가 찾고 있던거야. – Dogweather

1
Titanium.Gesture.addEventListener('orientationchange', function(e) { 
    Titanium.API.info('Gesture Change Detected'); 
    Ti.App.fireEvent('orientationchange', {eventObject:e}); 
}); 
+0

그래서 디스플레이가 회전 할 수 있도록 이벤트를 가져 와서 다시 실행해야합니까? – Dogweather

+1

이것은 각보기에서 오리엔테이션 변경의 기능을 분류하기위한 접근 방법입니다. 이벤트를 재발행 할 필요가 없습니다. –

1

이것은 android default에서 작동합니다. 하지만 아이폰에서 작동하지, 그래서이 코드를 작성

var win1 = Ti.UI.createWindow({ 
    title : 'Tab 1', 
orientationModes: [ 
     Ti.UI.LANDSCAPE_LEFT, 
     Ti.UI.LANDSCAPE_RIGHT, 
     Ti.UI.PORTRAIT, 
     Ti.UI.UPSIDE_PORTRAIT 
    ], 
}); 

win1.open(); 

Ti.Gesture.addEventListener('orientationchange', function(e) { 
    Titanium.API.info(Ti.Gesture.orientation); 
}); 

나, 당신이 쓸모가 있다고 생각.

관련 문제