2017-04-10 71 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。 我希望它有帮助。