点击某个标题后记录标题的参数比如标题1 =1.HTML 标题2 =2.HTMLwebView.loadUrl("xxx.com"+标题2);   

解决方案 »

  1.   

    我用了。但HTML里的内容要么不显示。要然一打开MainTabActivity就直接跳转到Body那个窗口。不是应该在shouldOverrideUrlLoading里加个什么判断。看是不是需要跳转呢?我的代码是这样的。
    protected void onCreate(Bundle savedInstanceState) {
                    super.onCreate(savedInstanceState);
                    setContentView(R.layout.activity_cs);                
                    final WebView myWebView = (WebView) findViewById(R.id.webview1)                                
                    myWebView.setWebViewClient(new WebViewClient());
                    myWebView.getSettings().setJavaScriptEnabled(true); 
                    myWebView.requestFocus();         
                    myWebView.loadUrl("http://wap.*****.net");        
                    myWebView.setWebViewClient(new WebViewClient()
                    public boolean shouldOverrideUrlLoading(final WebView view, final String url) {
                        Intent i=new Intent(MainTabActivity.this, Body.class);
                    i.putExtra("SourceUrl",url);
                    startActivityForResult(i, 0);
     //myWebView.loadUrl("http://wap.*****.net");  
                    return true;
                    }
                    });
                    
            }
      

  2.   

    是不是应该在shouldOverrideUrlLoading里加个什么判断。
      

  3.   

    你是怎么加载html,自己拼的字符串还是本地的html文件,我觉得js的问题可能很大,不然应该不会有你说的问题,多贴出来一些
      

  4.   

    加载的HTML是我网站的WAP手机版。都是很普通的<a href="forum.php?****>12345</a>超链接。我的JAVA代码全部在这里。
    public class MainTabActivity extends Activity {
    ProgressDialog pd;
     WebView wv;
    Handler handler;
    String tdurl;
    String bodyurl;
    String jsid;

    ProgressBar progressBar;
    private ValueCallback<Uri> mUploadMessage;  
     private final static int FILECHOOSER_RESULTCODE=1;  
     @Override  
     protected void onActivityResult(int requestCode, int resultCode,  
                                        Intent intent) {  
      if(requestCode==FILECHOOSER_RESULTCODE)  
      {  
       if (null == mUploadMessage) return;  
                Uri result = intent == null || resultCode != RESULT_OK ? null  
                        : intent.getData();  
                mUploadMessage.onReceiveValue(result);  
                mUploadMessage = null;  
      }
      }  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main);
    super.onCreate(savedInstanceState); 
       setTheme(R.style.dialog); 
     tdurl="http://www.baiseren.net/";
     init();//执行初始化函数
            loadurl(wv,tdurl);
            Mybutton();
    }
    public void init(){
    pd=new ProgressDialog(MainTabActivity.this);
         pd.setProgressStyle(ProgressDialog.BUTTON_NEGATIVE); 
         pd.setMessage("载入中...");
         handler=new Handler(){
             public void handleMessage(Message msg){
             if (!Thread.currentThread().isInterrupted()){
             switch (msg.what)
             {
             case 0:
             pd.show();//显示进度对话框
             break;
             case 1:
             pd.hide();//隐藏进度对话框,不可使用dismiss()、cancel(),否则再次调用show()时,显示的对话框小圆圈不会动。
             break;
             }
             }
             super.handleMessage(msg);
             }
             };
             wv=(WebView)findViewById(R.id.webview1);      
             WebSettings webSettings = wv.getSettings();// 使能JavaScript
    webSettings.setJavaScriptEnabled(true);// 使能JavaScript
    wv.addJavascriptInterface(this, "android");//// 添加js调用接口
             wv.setWebViewClient(new WebViewClient(){// 这个方法在用户试图点开页面上的某个链接时被调用
             public boolean shouldOverrideUrlLoading(final WebView view, final String url) {
                    Intent i=new Intent(MainTabActivity.this, Body.class);
                            i.putExtra("SourceUrl",url);
                            startActivityForResult(i, 0);
                            return true;
             }//重写点击动作,用webview载入
             });
    wv.setWebChromeClient(new WebChromeClient(){
         public void onProgressChanged(WebView view,int progress){//载入进度改变而触发
         if(progress==100){
         handler.sendEmptyMessage(1);//如果全部载入,隐藏进度对话框   
         }
         super.onProgressChanged(view, progress);
         }
         //////////////////////////////////////////For Android 4.1
            public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture){
                mUploadMessage = uploadMsg;             
                Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
                i.addCategory(Intent.CATEGORY_OPENABLE);  
                i.setType("image/*");  
                MainTabActivity.this.startActivityForResult( Intent.createChooser( i, "选择要使用的应用" ), MainTabActivity.FILECHOOSER_RESULTCODE);    
            }        ////////////////////////////////////////////////////////////
         });
         }
      public void loadurl(final WebView view,final String url){
         new Thread(){
             public void run(){
             handler.sendEmptyMessage(0);
             bodyurl=url;
             view.loadUrl(url);//载入网页
             }
            }.start();
        }   
    //判断是否已经返回到最前面一而然后弹出是否退出对话框
    public void onBackPressed() {
    WebView myWebView = (WebView) findViewById(R.id.webview1);// 加载一个网页,使用loadUrl():
            if(myWebView.canGoBack()){
                    myWebView.goBack();
            }else{
                    Builder builder = new Builder(MainTabActivity.this);
                    builder.setTitle("退出确认");
                    builder.setMessage("确定要退出吗?");
                    builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                             MainTabActivity.this.finish();
                            }
                    });
                    builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                    dialog.dismiss();
                            }
                    });
                    builder.show();
            }
    } }
      

  5.   

    不好意思。感谢各位。认真检查。估计真的是我的HTML有问题。