6

私は何か空想的なことをすることについて話しているのではありません。ユーザーがデバイスを回転させたときに、標準のウィンドウとビューを回転させたいのですが。

4

3 に答える 3

10

どの方向をサポートする必要があるかをウィンドウに指示する必要があります。

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

window.open();

次に、次のようにリスナーで向きの変化を聞くことができます。

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

編集:私は(私はそれを試したことがありませんが)これを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>
于 2011-03-16T12:16:06.590 に答える
1
Titanium.Gesture.addEventListener('orientationchange', function(e) {
    Titanium.API.info('Gesture Change Detected');
    Ti.App.fireEvent('orientationchange', {eventObject:e});
});
于 2011-03-16T11:07:32.267 に答える
1

これはAndroidのデフォルトで動作します。しかし、iPhoneでは動作しないので、このコードを書いてください

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);
});

私、これはあなたにとって有用だと思います。

于 2012-03-07T10:52:37.080 に答える