Autore Topic: Problema WebView  (Letto 389 volte)

Offline TheMonk

  • Nuovo arrivato
  • *
  • Post: 16
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S
  • Sistema operativo:
    Windows 7
Problema WebView
« il: 06 Agosto 2013, 10:05:52 CEST »
0
Ciao a tutti! Sto facendo un'applicazione molto semplice: un main con un bottone che mi apre una nuova View con una ListView che cliccando su un item della lista si aprirà una View di dettaglio dell'item. Il problema è in quest'ultima View. Qui tramite una WebView vorrei importare una pagina html che ho fatto io contenente una foto e una descrizione, il problema è proprio la foto. Questa infatti non me la fa vedere. Sia la foto che la pagina html le ho inserite nella cartella "assets" e questo è il codice che utilizzo per prendere la pagina con la WebView: 
Codice (Java): [Seleziona]
WebView myWebView = new WebView(this);
                myWebView = (WebView) findViewById(R.id.webviewJoffrey);
                myWebView.loadUrl("file:///android_asset/baratheon.html");
                myWebView.getSettings().setBuiltInZoomControls(true);

Nel xml ci sta solo la WebView,
qualcuno mi sa aiutare?

Offline aw4y

  • Utente junior
  • **
  • Post: 59
  • Respect: +6
    • Mostra profilo
  • Dispositivo Android:
    samsung i5500
  • Sistema operativo:
    osx/linux
Re:Problema WebView
« Risposta #1 il: 06 Agosto 2013, 11:05:09 CEST »
0
errori nel logcat?

Offline TheMonk

  • Nuovo arrivato
  • *
  • Post: 16
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S
  • Sistema operativo:
    Windows 7
Re:Problema WebView
« Risposta #2 il: 06 Agosto 2013, 11:07:53 CEST »
0
08-06 05:06:46.735: E/cutils-trace(789): Error opening trace file: No such file or directory (2)

Questo è l'errore

Offline gabric

  • Utente senior
  • ****
  • Post: 613
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
Re:Problema WebView
« Risposta #3 il: 06 Agosto 2013, 11:54:03 CEST »
0
ci sono 3 /
eliminane 1

Offline TheMonk

  • Nuovo arrivato
  • *
  • Post: 16
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S
  • Sistema operativo:
    Windows 7
Re:Problema WebView
« Risposta #4 il: 06 Agosto 2013, 12:02:53 CEST »
0
ho eliminato una / ma a quel punto non mi carica proprio la pagina html e mi dice "Page Not Found". Il problema non sta nel caricamento della pagina html (infatti quella con il suo background e testo me la carica), ma sta nella foto inserita nella pagina html.

Offline Sakazaki

  • Utente normale
  • ***
  • Post: 396
  • Respect: +74
    • Mostra profilo
  • Dispositivo Android:
    Sony xperia Z
  • Play Store ID:
    Saka Labs
  • Sistema operativo:
    Windows 8
Re:Problema WebView
« Risposta #5 il: 06 Agosto 2013, 13:23:36 CEST »
0
Assumendo che la tua pagina con le immagini sia nell'asset dell'applicazione, e che la pagina abbia riferimenti relativi per le immagini.

Prevedi un metodo per leggere il file dagli asset  come stringa, qualcosa del tipo (salvo errori e/o omissioni):

Codice (Java): [Seleziona]
public static String readAssetFileAsString(String fileName) throws java.io.IOException
{
    InputStream input = getAssets().open(fileName);
    BufferedReader reader = new BufferedReader(new InputStreamReader(input));
    String line ="";
    StringBuffer results = new StringBuffer();
    while( ( line = reader.readLine() ) != null)
    {
        results.append(line);
    }
    reader.close();
    input.close();
    return results.toString();
}

Poi quando carichi la webview:
Codice (Java): [Seleziona]
WebView myWebView = (WebView) findViewById(R.id.webviewJoffrey);
String html = readAssetFileAsString("baratheon.html");
myWebView.loadDataWithBaseURL("file:///android_asset/",
               html,
               "text/html",
               "utf-8",
               null);

Valar Morghulis

Offline gabric

  • Utente senior
  • ****
  • Post: 613
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
Re:Problema WebView
« Risposta #6 il: 06 Agosto 2013, 13:34:55 CEST »
0
Direttamente da stackoverflow


Codice (Java): [Seleziona]
WebView mWebView=(WebView)findViewById(R.id.mWebView);
 mWebView.loadUrl("file:///book.html");
 mWebView.getSettings().setJavaScriptEnabled(true);
 mWebView.getSettings().setSaveFormData(true);
mWebView.getSettings().setBuiltInZoomControls(true);
 mWebView.setWebViewClient(new MyWebViewClient());
 private class MyWebViewClient extends WebViewClient {
 @Override //show the web page in webview but not in web browser
public boolean shouldOverrideUrlLoading(WebView view, String url)
{ view.loadUrl (url); return true; }
 }

Offline TheMonk

  • Nuovo arrivato
  • *
  • Post: 16
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S
  • Sistema operativo:
    Windows 7
Re:Problema WebView
« Risposta #7 il: 06 Agosto 2013, 15:18:15 CEST »
0
Grazie a tutti per le risposte! Il problema era che non riusciva a trovare l'immagine. Ho creato una nuova cartella nella cartella "asset", dove ho inserito l'immagine della pagina html cambiando quindi il path nella pagina html.
 Funziona :)