Android 如何在onitemclick上的webview中加载HTML文件

Android 如何在onitemclick上的webview中加载HTML文件,android,html,webview,Android,Html,Webview,我有100多个html文件,我希望每个文件在listview中单击行时打开,每个html文件都应该在webview中打开,我尝试了此代码,但这不起作用,只有webview在单击行时打开,html文件没有显示 package com.Example.apk; import android.app.Activity; import android.graphics.Bitmap; import android.os.Bundle; import android.webkit.WebViewC

我有100多个html文件,我希望每个文件在listview中单击行时打开,每个html文件都应该在webview中打开,我尝试了此代码,但这不起作用,只有webview在单击行时打开,html文件没有显示

 package com.Example.apk;



import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.webkit.WebViewClient;

public class WebView extends Activity {

public class WebViewActivity extends Activity {
    WebView web;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_webview);
        web = (WebView) findViewById(R.id.webview1);
        web.setWebViewClient(new myWebClient());
        web.getSettings().setJavaScriptEnabled(true);
        int pos = getIntent().getIntExtra("key",0);
        if(pos==0)
        {
        web.loadUrl("file:///android_asset/work.html");
        }
        else if(pos==1)
        {
        web.loadUrl("file:///android_asset/work1.html");
        }  
        else if(pos==2)
        {
        web.loadUrl("file:///android_asset/work2.html");
        } 
        else if(pos==3)
        {
        web.loadUrl("file:///android_asset/work3.html");
        }  
      // similarly for 4 and 5 and so on.
    }

    public class myWebClient extends WebViewClient
    {
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            // TODO Auto-generated method stub
            super.onPageStarted(view, url, favicon);
        }

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

            view.loadUrl(url);
            return true;

        }
        @Override
        public void onReceivedError(WebView view, int errorCode,
                String description, String failingUrl) {
        }
        @Override
        public void onPageFinished(WebView view, String url) {
            // TODO Auto-generated method stub
            super.onPageFinished(view, url);

        }
    }
}
}

为了你的目的,用这个

WebView wv = (WebView)rootView.findViewById(R.id.go_web_view);
        wv.getSettings().setJavaScriptEnabled(true);
        wv.loadDataWithBaseURL(null, description, "text/html", "utf-8", null);
这里的“description”是包含有或没有html标记的数据的字符串的名称

 list1.setOnItemClickListener(new OnItemClickListener() {
     public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
    String url = m_ArrayList.get(arg2).your_url;
                   Intent myIntent = new     Intent(MainActivtiy.this,AppWebView.class);
                   myIntent.putExtra("key",url);
                   startActivity(myIntent);

      }
     }); 

为了你的目的,用这个

WebView wv = (WebView)rootView.findViewById(R.id.go_web_view);
        wv.getSettings().setJavaScriptEnabled(true);
        wv.loadDataWithBaseURL(null, description, "text/html", "utf-8", null);
这里的“description”是包含有或没有html标记的数据的字符串的名称

 list1.setOnItemClickListener(new OnItemClickListener() {
     public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
    String url = m_ArrayList.get(arg2).your_url;
                   Intent myIntent = new     Intent(MainActivtiy.this,AppWebView.class);
                   myIntent.putExtra("key",url);
                   startActivity(myIntent);

      }
     }); 

将职位传递给下一个活动

list1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
            int position, long id) {
Intent myIntent = new Intent(MainActivtiy.this,WebViewActivity.class);
myIntent.putExtra("key",position);
startActivity(myIntent);
}
});   
WebViewActivity的xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

</LinearLayout>


在清单文件中为WebViewActivity创建一个条目。

将位置传递给下一个活动

list1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
            int position, long id) {
Intent myIntent = new Intent(MainActivtiy.this,WebViewActivity.class);
myIntent.putExtra("key",position);
startActivity(myIntent);
}
});   
WebViewActivity的xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

</LinearLayout>


在清单文件中为WebViewActivity创建一个条目。

您是否在下一个活动中调用了loadUrl()?如果是,请确保使用WebViewClient类在下一个活动中是否调用了loadUrl()?如果是,请确保您使用WebViewClient类您可以修改我的onitemclicklistener吗?您可以向我说明您正在获取url或字符串或url/字符串吗?您不能更改我的整个项目进行编辑,你能改为编辑我的代码吗?你能修改我的监听器吗?你能告诉我你得到了一个url或字符串或url/字符串吗?你不能为了编辑而更改我的整个项目,你能改为编辑我的代码吗?@96 copy将上面的代码粘贴到适当的类和xml中,它就会工作fine@96没有什么需要理解的。在
onItemClick
中,第三个参数是位置。将其传递给
WebViewActivity
。在
webview活动中
get被单击项目的位置
int pos=getIntent().getIntExtra(“键”,0)。基于位置从Assets fodler加载url ir html
if(pos==0)
@96以获得更多的if-else,仅此而已。这是非常基本的java内容。如果你知道,没有什么难懂的java@96如果还有其他问题,您不能添加什么问题。找一本java书读一读it@96我只看到红线,我找不到错误是什么。请张贴代码和堆栈跟踪,以帮助您解决问题。请发一个新问题。尝试阅读stacktrace了解错误并尝试自己解决,或者至少在此处发布。发布链接或快照没有帮助anybody@96将上面的代码复制粘贴到适当的类和xml中,就可以了fine@96没有什么需要理解的。在
onItemClick
中,第三个参数是位置。将其传递给
WebViewActivity
。在
webview活动中
get被单击项目的位置
int pos=getIntent().getIntExtra(“键”,0)。基于位置从Assets fodler加载url ir html
if(pos==0)
@96以获得更多的if-else,仅此而已。这是非常基本的java内容。如果你知道,没有什么难懂的java@96如果还有其他问题,您不能添加什么问题。找一本java书读一读it@96我只看到红线,我找不到错误是什么。请张贴代码和堆栈跟踪,以帮助您解决问题。请发一个新问题。尝试阅读stacktrace了解错误并尝试自己解决,或者至少在此处发布。发布链接或快照对任何人都没有帮助