2017-04-10 114 views
0

我創建了一個HTML文件並將其添加到資產文件夾。我添加了一個web視圖到axml文件,像這樣Android WebView未加載HTML文件

<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:id="@+id/LocalWebView"> 
</WebView> 

,並試圖用下面的代碼

protected override void OnCreate(Bundle savedInstanceState) 
     { 
      base.OnCreate(savedInstanceState); 
      SetContentView(Resource.Layout.Teams); 

      WebView localWebView = FindViewById<WebView>(Resource.Id.LocalWebView); 
      localWebView.LoadUrl("file:///android_asset/Content/Teams.html"); 
     } 

它告訴我該文件未找到加載它。是否有其他地方的資產文件夾,我不得不添加HTML頁面或其他我必須做的?

+0

你確定你的文件是你認爲它在你的項目的'assets /'中嗎? – CommonsWare

+0

是的,其中唯一的其他文件是「aboutassets」。這應該是對的嗎? –

+0

'除了assets文件夾我還要添加html頁面嗎?您應該將其添加到資產中的「內容」文件夾。 – greenapps

回答

0

請確保您有您的資產裏面的「內容」文件夾和內容文件夾中的HTML頁面,如果這是正確的,那麼重建你的應用程序,然後運行。如果它再次產生錯誤,則註釋發生的確切錯誤名稱。

+0

錯誤消息是網頁不可用。 「file /// android_asset/Content/Teams.html中的網頁無法加載,因爲net :: ERR_FILE_NOT_FOUND –

0

把這些線太

WebView webView=(WebView)findViewById(R.id.web_view1); 

     webView.getSettings().setJavaScriptEnabled(true); 
     webView.getSettings().setAllowFileAccess(true); 
     webView.getSettings().setUseWideViewPort(true); 
     webView.getSettings().setLoadWithOverviewMode(true); 
     webView.getSettings().setBuiltInZoomControls(true); 
     webView.loadUrl("file:///android_asset/about_us.html"); 
+2

請詳細解釋**,這些將如何防止「WebView」中的文件未找到錯誤。 – CommonsWare

+0

它不會阻止文件未找到錯誤。它只是啓用JavaScript和縮放控制,並增強WebView的平滑性 – yogi

+0

在答案中添加,而不是評論 –

0

就我而言,重建解決方案只是解決了問題。 實際上,它只能加載一個URL,並拒絕加載其他完全奇怪的URL,因此我決定重新構建解決方案。還有一件事。將html文件放入Content文件夾中不是的義務。

請注意,我正在使用xamarin框架和visual studio作爲IDE。 我希望它有幫助。