zoukankan      html  css  js  c++  java
  • webView中支持input的file的选择和alert弹出

    alert()弹出

    input的file现选择(特别说明:不同的android版本弹出的样式不同,选择文件后自动上传) 

     

    webView.setWebChromeClient(new WebChromeClient() { 
    //支持alert弹出 
    @Override 
    public boolean onJsAlert(WebView view, String url, String message, 
    JsResult result) { 
    return super.onJsAlert(view, url, message, result); 

    @Override 
    public boolean onJsConfirm(WebView view, String url, 
    String message, JsResult result) { 
    return super.onJsConfirm(view, url, message, result); 

    //webView中支持input的file现选择 
     // For Android 3.0+ 
            public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType) {   
                   if (mUploadMessage != null) return; 
                   mUploadMessage = uploadMsg;    
                   Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
                   i.addCategory(Intent.CATEGORY_OPENABLE); 
                   i.setType("*/*"); 
                       startActivityForResult( Intent.createChooser( i, "File Chooser" ), Util.FILECHOOSER_RESULTCODE ); 
                    } 
                // For Android < 3.0 
            public void openFileChooser(ValueCallback<Uri> uploadMsg) { 
                   openFileChooser( uploadMsg, "" ); 
            } 
            // For Android  > 4.1.1 
          public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture) { 
                  openFileChooser(uploadMsg, acceptType); 
          } 

      1.   @Override   
      2.   protected   void  onActivityResult( int  requestCode,  int  resultCode,  
      3.                                     Intent intent) {  
      4.    if (requestCode==FILECHOOSER_RESULTCODE)  
      5.   {  
      6.     if  ( null  == mUploadMessage)  return ;  
      7.             Uri result = intent ==  null  || resultCode != RESULT_OK ?  null   
      8.                     : intent.getData();  
      9.             mUploadMessage.onReceiveValue(result);  
      10.             mUploadMessage =  null ;  
      11.               
      12.   }  
      13.  }  
    天生我才必有用,千金散去还复来!
  • 相关阅读:
    基于 mockm 的一款 HBuilderX 插件
    css 加载中省略号动画
    定时获取远程文件并存储更新记录
    跨域实例和解决方案
    接口数据总是返回 null 如何回馈和处理
    get 请求中如何携带 body 参数
    看起来像一个 textarea 的 div
    js 高精度运算
    nodejs 服务终端使用 nodemon 运行脚本时实时输出
    解决 vue-cli3 多入口打包 BASE_URL is not defined
  • 原文地址:https://www.cnblogs.com/Jack-Lu/p/4359805.html
Copyright © 2011-2022 走看看