最近在学习android的WebView组件,其中的加载网页方法:loadUrl(String url),url不需给全了才能加载成功,比如要想访问CSDN网站,url必须是http://www.csdn.net才能成功访问,如果url="www.csdn.net",就无法访问!因为我们访问网站时,一般都只记得域名,很少会知道是什么协议(虽然大多数时候是http协议)     有什么方法可以把类似www.csdn.net的网址加上对应的协议名(比如:http://、https://、FTP://、file:///),以达到直接输入域名就能访问的效果,就像使用IE、Firefox之类的浏览器一样,我们访问百度,只需输入www.baidu.com,敲回车后,自动为我们加上http://期待中解决办法!!!!!!

解决方案 »

  1.   

    好像有个apidemo中的例子,是说正则表达式的,也许可以试试
      

  2.   

    能给出例子的名称吗?
    我这好些模拟器版本,每个版本都有好多个DEMO
      

  3.   

    你可以先判断下是否http打头,不是就自己格式化帮它补全http://,另外http跟ftp、file等是明显区分的吧,难道打csdn.net会进入csdn的ftp吗,file:///的话一般是判断有没有dot,有的话就是解释为网址
      

  4.   

    你可以先判断下是否http打头,不是就自己格式化帮它补全http://,另外http跟ftp、file等是明显区分的吧,难道打csdn.net会进入csdn的ftp吗,file:///的话一般是判断有没有dot,有的话就是解释为网址
      

  5.   

    你可以先判断下是否http打头,不是就自己格式化帮它补全http://,另外http跟ftp、file等是明显区分的吧,难道打csdn.net会进入csdn的ftp吗,file:///的话一般是判断有没有dot,有的话就是解释为网址
      

  6.   

    手动添加HTTP://是可以,但合法的URL包含的协议类型远不止HTTP://吧,我想要的是像FIREFOX浏览器那样,直接输入网址之类的,它会自动判断并添加正确的协议头
      

  7.   

    这是比较智能的功能,还得靠你自己去判断和设计。有多少协议你肯定得枚举完,没有什么囊括一切一步解决的东西,无论http、https、ftp等你都得自己判断
    不过我疑惑这么智能,如果我打csdn.net,假设http://csdn.net、https://csdn.net、ftp://csdn.net都存在的话,你该让它进入哪个地址呢?做太多这些也是会影响性能的
      

  8.   

    问一个类似的问题:在WebView中点击链接,它不是就自动打开了被链向的页面吗?
    我想这样:超链是这样的:<a href=“topic://text1.txt”>相关文档</a>。点击“相关文档”,打开的不是纯文本形式的text1.txt,而是先捕获这一超链,分析,如果是普通超链,则加载;如果是“topic”型超链(自己定义的),则将后面的文本转化成HTML再加载。
    是通过重写WebView的loadUrl事件中捕获吗?我没能实现。求教!万分感谢!