2011-05-23 1 views
0

Я использую этот код, чтобы показать флеш-видео. Моя проблема в том, когда я перехожу от вертикальной к горизонтальной позиции, перезагрузки приложений и видео сбрасываются. Как я могу избежать этого. Пожалуйста, дайте советыПроблема с поворотом экрана Android + Flash

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.internalwebview); 

     mWebView = (WebView) findViewById(R.id.webview); 
     mWebView.setWebViewClient(new HelloWebViewClient()); 
     mWebView.getSettings().setPluginsEnabled(true); 
     mWebView.getSettings().setJavaScriptEnabled(true); 
     mWebView.getSettings().setSupportZoom(true); 
     mWebView.getSettings().setBuiltInZoomControls(true); 
     mWebView.setInitialScale(ZOOM_LEVEL); 
     mWebView.getSettings().setUseWideViewPort(true); 

      mWebView.loadUrl(url); 

    } 

ответ

0

Спасибо, что я нашел ответ сам.

mWebView = (WebView) findViewById(R.id.webview); 
mWebView.getSettings().setLoadWithOverviewMode(true); 
mWebView.getSettings().setPluginsEnabled(true); 
mWebView.getSettings().setUseWideViewPort(true); 
mWebView.getSettings().setBuiltInZoomControls(true); 
mWebView.setWebViewClient(new HelloWebViewClient()); 
mWebView.loadUrl(url); 

и AndroidManifest.xml

<android:label="@string/app_name" android:configChanges="keyboardHidden|orientation" android:theme="@android:style/Theme.NoTitleBar"> 
2

Добавить android: screenOrientation = "портрет" для деятельности в AndroidManifest.xml. Например:

<activity android:name=".SomeActivity" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait"> 

Это будет отключить автоматическую ориентацию изменения в противном случае вы должны были обрабатывать изменения самостоятельно

2

Если вы еще не сделали, вы могли бы попробовать сохранить состояние вашего WebView, когда изменение ориентации путем добавления ссылки на onSaveInstanceState() в своей деятельности:

protected void onSaveInstanceState(Bundle outState) { 
    mWebView.saveState(outState); 
} 

Затем перезапуске его снова в методе onCreate(), как указано ниже:

public void onCreate(final Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.internalwebview); 

    if (savedInstanceState != null) 
     ((WebView)findViewById(R.id.webview)).restoreState(savedInstanceState); 
} 

Хотя я не совсем уверен, что он работает для встроенного Flash-видео. См. Дополнительную информацию this thread или Android SDK reference

+0

великое объяснение, но только в случае, если один спрашивает, что происходит, когда происходит изменение ориентации ... [здесь хороший пробой] (HTTP: // stuffthathappens. ком/блог/2008/11/26/андроид-жизненный цикл триггера-часть-2 /) – taymless

Смежные вопросы