zoukankan      html  css  js  c++  java
  • swift

    1.图片截取
        func test(addView:UIView) -> UIImage?{
            UIGraphicsBeginImageContextWithOptions(CGSize( JY_DEVICE_WIDTH, height: addView.height), false, UIScreen.main.scale)
            
            if let context = UIGraphicsGetCurrentContext() {
                addView.layer.render(in: context)
                let imamge = UIGraphicsGetImageFromCurrentImageContext()
                UIGraphicsEndImageContext()
                return imamge
            }
            return nil
        }
    

      

    2.保存相册
        方法1:直接保存, 但是没办法做提示操作或错误监听
                if let img = image{   
                UIImageWriteToSavedPhotosAlbum(img, nil, nil, nil)
                }    
    
    
    
        方法2:可监听系统方法
                if let img = self.test(addView: tempView){
                UIImageWriteToSavedPhotosAlbum(img,     self,#selector(image(image:didFinishSavingWithError:contextInfo:)), nil)
            }    
    
    
        //图片保存到本地
        @objc func image(image:UIImage,didFinishSavingWithError error:NSError?,contextInfo:AnyObject) {
            if error != nil
            {
                print("--(image)---","++++(String(describing: error))++++")
                return
            }else{
                view.showSuccessInfo(info: "图片保存成功")
            }
        }
    

      

    3.  保存的时候  
      (1)必须 重新创建一个临时tempView, 加到当前VC上,然后获取图片,保存到相册,
      (2)如果直接用VC的原来的self.view或者SV啥的, 没效果,不知道是啥问题
      (3)移除顺序, 先加到原来view上,在移除tempview let tempView = UIView() tempView.bounds = CGRect(x: 0, y: 0, JY_DEVICE_WIDTH, height: scroller.contentSize.height) view.addSubview(tempView) configScroller(addView: tempView) if let img = self.test(addView: tempView){ UIImageWriteToSavedPhotosAlbum(img, self, #selector(image(image:didFinishSavingWithError:contextInfo:)), nil) }else{ view.showTipsInfo(tips: "图片不存在") } //先添加到SV上在u移除, 不然子控件位置会 异常 configScroller(addView: scroller) tempView.removeFromSuperview()

      

  • 相关阅读:
    视图&索引&序列
    PL/SQL语言基础
    C#实现递归矩阵连乘(动态规划的递归自顶向下,非递归自地向上)
    JS 第五课
    请问,小丽的鞋子到底是什么颜色的?
    用10!来回顾 PL/SQL语言基础 && 标准异常名
    SELECT 查询—子查询
    备份和恢复
    JS 第六课
    Linux学习之二Linux系统的目录结构
  • 原文地址:https://www.cnblogs.com/qingzZ/p/9914697.html
Copyright © 2011-2022 走看看