Я загружаю Flash SWF в Android WebView.
Я хочу, чтобы SWF мгновенно отображался в полноэкранном режиме и был сфокусирован.
Имя класса, обрабатывающего flash, равно com.adobe.flashplayer.FlashPaintSurface
. Смотря журнал, когда я в полноэкранном режиме прошивал вручную, он вызывает com.adobe.flashplayer.FlashPaintSurface.toggleFullScreen()
.
Первая часть моего вопроса: как я могу вызвать этот метод вручную для моего Flash SWF?
Обратите внимание, что при просмотре веб-страницы со встроенной вспышкой мне кажется, что я могу только в полноэкранном режиме работать с ней (чтобы полноэкранный режим surfaceview
вместо Flash отображался поверх webview view
), - нажав экран двумя пальцами, пока интерфейс не появится в верхней части экрана и не произойдет надежно.
Для фокуса, внутри моего класса веб-просмотра я звоню:
@Override
protected boolean drawChild (Canvas canvas, View child, long drawingTime) {
if (child.getClass().getName().equals("com.adobe.flashplayer.FlashPaintSurface")) {
child.requestFocus();
}
return super.drawChild(canvas, child, drawingTime);
}
Это не устанавливает фокус, как я думал, что будет. Хотя я полагаю, что при правильном полноэкранном использовании FlashPaintSurface должен фокусироваться на себе. Но если первая часть не выполнима, я хотел бы, по крайней мере, не обращать внимания на SWF, щелкая по нему при запуске.
Обратите внимание, что я делаю это динамически, не вызывая свои собственные SWF, которые я делаю сам, поэтому я не могу решить это с помощью ActionScript.