2011-05-18 12 views
0

J'ai une page sur mon application Android qui permet d'afficher le contenu d'un fichier HTML en utilisant le code ci-dessous -WebView ne pas afficher les données du fichier html

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

     WebView wv = (WebView) findViewById(R.id.WebView01); 
     try { 
      InputStream fin; 
      fin = getAssets().open("Preface.html"); 
      byte[] buffer = new byte[fin.available()]; 
      fin.read(buffer); 
      fin.close(); 
      wv.loadData(new String(buffer), "text/html", "UTF-8"); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
} 

Le code passe bien, mais le contenu ne montrent pas dans le webview, qu'est-ce que je fais mal?

Répondre

0

D'abord, afficher le contenu du fichier que vous téléchargez dans le LogCat, et voir si le téléchargement est Okey ou non

+0

Le téléchargement est correct car si je charge dynamiquement le fichier html en utilisant le code - WebView wv = new WebView (this); setContentView (wv); Le fichier se charge sans problème. – user616076

1

utilisation

wv.loadUrl("file:///android_asset/Preface.html"); 

être sûr que votre fichier est Preface.html dans votre Android actifs/dossier

ou si votre fichier html contient du code javascript activer JavaScript avec le soutien

WebView wv = (WebView) findViewById(R.id.WebView01); 
     try { 
      InputStream fin; 
      fin = getAssets().open("Preface.html"); 
      byte[] buffer = new byte[fin.available()]; 
      fin.read(buffer); 
      fin.close(); 
      wv.loadData(new String(buffer), "text/html", "UTF-8"); 
    WebSettings webSettings = wv.getSettings(); 
    wv.setJavaScriptEnabled(true); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

Si cela ne résout pas votre problème, collez votre code html.

+0

Malheureusement le wv.loadUrl .. ne fonctionnait pas et quand j'ai essayé le code ci-dessus j'ai une erreur disant que setJaveScriptEnabled est indéfini. Bizarrement quand je charge dynamiquement la webview en utilisant le code WebView webview = new WebView (this); \t setContentView (webview); le html se charge parfaitement, il ne charge pas dans le composant. – user616076

+0

ok L'utilisateur publie votre Layout.xml – Jorgesys

0

Parfois, la taille de votre écran devient trop petite pour que le contenu s'affiche à l'écran. voir à ce que vous utilisez une résolution d'affichage plus grande pour votre écran.

+0

pour cela, il peut utiliser un scrollView, puis un webView à l'intérieur, – Houcine

Questions connexes