Изменение ориентации Titanium Appcelerator не происходит

#android #appcelerator #orientation-changes

#Android #ускоритель приложений #ориентация-изменения

Вопрос:

У меня проблема с orientationchange в titanium appcelerator. При перемещении между вкладками orientationchange событие не запускается при переключении между книжной и альбомной ориентациями.

Вот мой код

 Titanium.Gesture.addEventListener('orientationchange', function(e){

    var alertDialog = Ti.UI.createAlertDialog({
        title: "Alert",
        message: "Orientation is "   e.orientation,
        buttonNames: ['OK'],
        cancel:0
    });
    alertDialog.show();

});
  

Вот шаги воспроизведения:

  1. Перейдите на вкладку 2, а затем войдите в альбомный режим (появится предупреждение).
  2. Вернитесь на вкладку 1, переведите телефон в портретный режим (предупреждение не появляется).
  3. Событие не происходит. (Последующие события срабатывают как обычно (появляется предупреждение))

У кого-нибудь есть идея по обходному пути? Мне это нужно, потому что я должен изменить представление onorientationchange . Я использую Titanium Appcelerator 1.2.2, мобильную версию 1.6, Api 2.2

Ответ №1:

неважно

РЕДАКТИРОВАТЬ: я нашел обходной путь http://developer.appcelerator.com/question/74781/orientationchange-is-never-fired

Комментарии:

1. Я пробовал, но предупреждение не появляется. Проблема не в том, что изменение ориентации никогда не срабатывает, а в том, что изменение ориентации не срабатывает в таком контексте: вот шаги воспроизведения: 1. Переключитесь на вкладку 2, а затем войдите в ландшафтный режим (появится предупреждение). 2. Вернитесь на вкладку 1, переведите телефон в портретный режим (предупреждение не появляется). 3. Событие не происходит. (Последующие события срабатывают как обычно (появляется предупреждение)) в любом случае спасибо

Ответ №2:

 Ti.Gesture.addEventListener('orientationchange', function(e){

var alertDialog = Ti.UI.createAlertDialog({ 
    title: "Alert", message: "Orientation is "  e.orientation, buttonNames: ['OK'], cancel:0 }); alertDialog.show();

});