Включить ориентацию в UIWebview при оценке Javascript - PullRequest
0 голосов
/ 04 марта 2012

Когда я начинаю оценивать JavaScript, как когда пользователь выбирает текст, выделите выделенный текст. В подобных ситуациях я не могу продолжить ориентацию устройства в iPad и останавливает ориентацию, и она не активна, пока полностью не выполнен JavaScript.

Есть ли способ обработать оценку javascript в uiwebview без ущерба для ориентации uiwebview.

1 Ответ

0 голосов
/ 04 марта 2012

уверен.когда вы запускаете свой javascript, вы можете установить логический var и установить var с текущей ориентацией вашего UIViewController (обе переменные в вашем экземпляре UIViewController), тогда в вашем UIViewController вы должны реализовать этот метод:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return YES;
}

это метод, который сообщает iPhone, может ли он вращать ваше приложение, когда пользователи поворачивают устройство.

, поэтому, когда ваш javascript запускается:

// BOOL stopRotation;// объявляем это в yourViewController.h stopRotation = TRUE;// UIInterfaceOrientation * currentOrientationFrozen;// объявляем это в yourViewController.h currentOrientationFrozen = self.interfaceOrientation;

и:

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
    {
        if (stopRotation){
             if (interfaceOrientation == currentOrientationFrozen) {
                 return YES;
             } else {
                 return NO;
             }
        } 
        return YES;

    }

затем, когда ваш javaScript останавливается, восстанавливаем BOOL и currentOrientationFrozen:

stopRotation = FALSE;
currentOrientationFrozen = nil;
...