2014-01-18 2 views
1

Я пытаюсь загрузить html-url, который содержит флеш-видео для определенного размера веб-просмотра. Я имею в виду, что у меня есть один LinearLayout, который будет меняться в зависимости от экрана resoultion. И этот макет содержит Webview с шириной и высотой «MATCH_PARENT». Но он не может загрузить URL-адрес, который может быть подходящим для этого макета.Загрузить URL-адрес html (Flash Video) для определенного размера веб-обозревателя Android

Мой макет XML выглядит, как показано ниже изображения:

enter image description here

Мой код:

mWebView = (WebView) findViewById(R.id.id_webview); 

    mWebView.getSettings().setJavaScriptEnabled(true); 
    mWebView.getSettings().setAllowFileAccess(true); 
    mWebView.getSettings().setPluginState(PluginState.ON); 
    mWebView.getSettings().setLoadWithOverviewMode(true); 
    mWebView.getSettings().setUseWideViewPort(true); 
    mWebView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); 
    mWebView.setScrollbarFadingEnabled(false); 
    mWebView.setWebViewClient(new WebViewClient(){ 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      // TODO Auto-generated method stub 
      return super.shouldOverrideUrlLoading(view, url); 
     } 
    }); 

    mWebView.loadUrl("http://XXXXXXXXXX/XX/XX.html"); 

Так вот он не в состоянии загрузить WebView правильно, что может быть пригодным для этой желтой части раскладка. Иногда это загрузка половины желтой части или иногда четверти желтой части. Это зависит от разных разрешений экранов. Но я хочу загрузить этот веб-просмотр, идеально подходящий для этого макета, даже если этот формат отличается или нет.

Update:

Я могу загрузить содержимое флэша отлично с всей шириной screen.So Если я удалю красную часть макета, я могу видеть вспышку отлично с WebView. Но если я добавлю что-то левую сторону, то флеш-ролик будет на том же проценте левого макета с правого края. Таким образом, веб-просмотр способен загружать всю страницу, но не может загрузить всю флеш-память с этой страницей.

Позвольте мне с вашей помощью или наилучшим предложением, если я что-то делаю неправильно.

+0

Облицовка одной и той же проблемы. Любое решение найдено? – user1444172

+0

@ user1444172: nope, после нескольких дней, я понял, что есть проблема с версией выше 4.1, потому что у android больше нет поддержки флэш-памяти в webview, они поддерживают HTML5. Поэтому, если возможно, переведите его в HTML5. – Jai

ответ

0

Решение этой проблемы требует изменения HTML и CSS, а не кода макета Android. WebView похож на веб-браузер. Поэтому мы можем перефразировать ваш вопрос следующим образом: как мне создать веб-страницу, чтобы видео заполнило всю страницу?

Вам нужно будет возиться со страницей HTML до тех пор, пока параметры панели вспышки не будут корректными. Хорошая отправная точка: здесь CSS необходимо, чтобы сделать изображение заполнить Webview

.video 
{ 
    width: 100%; 
} 

См example that uses the width attribute to make a full width image.

+0

Привет, чувак, Спасибо за ваш ответ. На самом деле я знаю это решение, но у меня нет доступа к этому HTML или CSS. Поэтому я хочу добиться этого только на стороне андроида! – Jai

+0

Даже если я собираюсь открыть этот URL с любым браузером на рабочем столе, я смогу увидеть его в полном виде. Возможно, он уже определен как 100% ширина – Jai

+0

Я проверил еще раз. Он выглядит как полный размер со всеми браузерами разного рабочего стола. Поэтому я думаю, что вы говорите, что это уже есть. Можем ли мы сказать, проверив этот путь? Я прав? – Jai

0

Вы попробовали WebView.setInitialScale? И вам также может понадобиться вычислить конкретное значение (используемое как входной параметр) для устройств с различными разрешениями.

Фактически ширина WebView определяется самим содержимым страницы, поэтому MATCH_PARENT мало помогает. Поэтому изменение начальной шкалы - это что-то вроде изменения уровня масштабирования, таким образом, веб-страница «выглядит» вписывается в ее родительский макет.

+0

Привет, я обновил свой вопрос. Пожалуйста, прочитайте его. – Jai

+0

1.Также посмотрите, загружен ли URL, загруженный в WebView, мобильной версией, и я имею в виду вас, если эта страница содержит метафайл viewport, с некоторыми атрибутами, такими как width = device-width. Вот почему ваша страница или, т. Е. Ваше флеш-видео всегда с фиксированной шириной (= ширина устройства). 2. И вы можете прочитать этот раздел [** 'Specify Viewport Properties' **] (http://developer.android.com/guide/webapps/targeting.html), чтобы узнать, помогает ли он. –

+0

Yup точно, я также попытался удалить этот тег. Это не помогает. можете ли вы просто попытаться создать образец проекта с вашей стороны? Я могу дать вам Flash-адрес. – Jai

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