方法

作者: theDeskmateOfSb | 来源:发表于2016-08-08 08:42 被阅读0次

    用到的一些函数

    1.取随机数的函数

    number = Int(arc4random_uniform(100))+1
    

    这是一个取1--100的随机数
    2.取绝对值的函数

    diff = abs(a-b)
    

    表示取a和b 的绝对值
    3.开根号的函数

    var i = 16
    Int(sqrt(Double(i)))
    print(i)
    

    输出结果i为4

    一些用到的方法

    1.让标签上字自适应的方法

    label.adjustsFontSizeToFitWidth = true
    

    2.让图片大小自适应

    let image3=UIImage(named: "SliderTrackLeft")?.resizableImageWithCapInsets(insets)
    

    发消息给图片让他大小可用
    3.当多个视图控制器的时候返回上一个控制器

    self.dismissViewControllerAnimated(true, completion:.None)
    

    4.在视图控制器上添加网页

    override func viewDidLoad() {
    //这是一个自动执行的函数,也即是说当跳到这个页面的时候会自动大开你添的网页
            let url=NSURL(string: "http://www.runoob.com/html/html-tables.html")
            //这个统一资源标示符是👆
            let request = NSURLRequest(URL: url! )
            //请求是分配一个统一资源定位标示符
            myView.loadRequest(request)//给它一个请求
            //要在视图控制器上添加一个webview的框架
        }
    

    5.用xcode画图
    首先在视图控制器上添加一个画布

    let canvans = Canvans(frame:self.view.bounds)
            canvans.backgroundColor = UIColor.clearColor()
            self.view.addSubview(canvans)
    

    然后去新建一个文件cocoa ,选择uiview为父类的文件
    接下来就是画图的一些方法了在里面是用贝塞尔曲线来画图的

    画图方法

    1.画直线

    let lineBP = UIBezierPath()
            lineBP.moveToPoint(CGPointMake(50, 100))
            lineBP.addLineToPoint(CGPointMake(300, 200))
            lineBP.lineWidth = 5//线条粗细
            UIColor.blackColor().set()//线条的颜色
            lineBP.stroke()//这里可以选择空心或者实心
    

    2。画矩形方框

     let rectBP = UIBezierPath(rect: CGRectMake(100, 200, 200, 400))//前两个表示坐标后两个表示宽高
            //设置线条颜色为红色
            UIColor.redColor().setStroke()
            //设置填充为黄色
            UIColor.yellowColor().set()
            //填充矩形区域
            rectBP.fill()
            //绘制矩形边框
            rectBP.stroke()
    

    3.画圆弧

    let arcBP = UIBezierPath(arcCenter: CGPointMake(150, 350), radius: 100, startAngle: 0, endAngle: CGFloat(M_PI_2), clockwise: false)
            UIColor.greenColor().set()
    //        arcBP.stroke()
            arcBP.fill()
    

    4.画椭圆

    let ovalBP = UIBezierPath(ovalInRect: CGRectMake(100, 300, 100, 50))
            UIColor(red: 37.0/255.0, green: 67.0/255.0, blue: 128.0/255.0, alpha: 1).set()
            ovalBP.fill()
    

    把椭圆后面两项改为一样就能变成圆了
    5.画二次曲线

    let quadBP = UIBezierPath()
            quadBP.moveToPoint(CGPointMake(50, 600))
            quadBP.addQuadCurveToPoint(CGPointMake(300, 600), controlPoint: CGPointMake(100, 300))
            quadBP.lineWidth = 3
            UIColor.grayColor().set()
    

    6.画封闭曲线

    let clouseBP = UIBezierPath()
            clouseBP.addArcWithCenter(CGPointMake(150, 200), radius: 100, startAngle:-CGFloat(M_PI), endAngle: 0, clockwise: true)
            clouseBP.addArcWithCenter(CGPointMake(150, 400), radius: 100, startAngle: 0, endAngle: CGFloat(M_PI), clockwise: true)
            //封闭整个曲线
            clouseBP.closePath()//这句很关键
            clouseBP.lineWidth = 10
            UIColor.redColor().set()
            clouseBP.stroke()
    

    动画的方法

    1。在控制器上给图片一个放图的框

     var imageView:UIImageView!
     imageView = UIImageView(frame: CGRectMake( x , y , 15, 25))//框的大小坐标
     imageView.image = UIImage(named: "runner0")//放一张图显示
    

    要让图片动起来要添加动画的图片

    imageView.animationImages = [UIImage(named: "runner0")!,
                UIImage(named: "runner1")!,
                UIImage(named: "runner2")!,
                UIImage(named: "runner3")!,
                UIImage(named: "runner4")!,
                UIImage(named: "runner5")!
            ]
    //这是一个动画的方法,注意图片名字不能错,而且括号后面的感叹号和逗号不能丢
    //动画的总持续时间
            imageView.animationDuration = 0.5
            self.view.addSubview(imageView)
            //开始动画
            imageView.startAnimating()
    

    这样子图片回动起来但是,只会在一个地方动
    我们需要添加一个时间控制器,让图片在屏幕上也动起来

    var timer:NStimer
    timer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: "move", userInfo: nil, repeats: true)
    //这里的move是一个函数,一个控制图片移动方向的函数
    func move(){
            var frame = imageView.frame
            imageView.frame.origin.y += 5
            imageView.frame.origin.x += 20
            imageView.frame = frame
    }
    

    随记

    控制输出位数

    add.text = "\(String(format: "%.2f",jia))"
    

    写动画的代码

    override func viewDidLoad() {
            super.viewDidLoad()
            var imageView:UIImageView!//创建一个图片的对象
            //给图片初始化
            imageView = UIImageView(frame: CGRectMake(0, 0, 410,730))
            //给图片
            imageView.animationImages=[UIImage(named: "1")!,
                UIImage(named: "2")!,
                UIImage(named: "3")!,
                UIImage(named: "3")!,
                UIImage(named: "4")!,
                UIImage(named: "5")!,
                UIImage(named: "6")!,
                UIImage(named: "7")!
        ]
            imageView.animationDuration = 1//动画持续的时间
            self.view.addSubview(imageView)//把对象添加到view里面
            imageView.startAnimating()//开始动画
        }
    
    

    点击空白取消第一响应

    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
            if admin.isFirstResponder()
            {
              admin.resignFirstResponder()
            }
            else if password.isFirstResponder()
            {
              password.resignFirstResponder()
            }
        }
    
    

    指纹解锁解锁代码

    {
    
    override func viewDidLoad() {
        super.viewDidLoad()
        let errPointer = NSErrorPointer()
        let ctx = LAContext()//上下文类
        //判断设备是否支持指纹识别
        if ctx.canEvaluatePolicy(.DeviceOwnerAuthenticationWithBiometrics, error: errPointer){
            //Swift中允许将一个函数作为另一个函数的参数
            //evaluattePolicy方法的第三个参数是一个函数
            //该函数传参数时可以在花括号中写一个匿名函数传进去
            //该匿名函数通常也被称为“闭包”
            ctx.evaluatePolicy(.DeviceOwnerAuthenticationWithBiometrics, localizedReason: "请输入指纹进行支付", reply: { (isOK, err) -> Void in
                if isOK {
                    print("支付成功")
                }
                else{
                    print("支付失败")
                }
            
            })
            
        }
        else{
            print("你的设备不支持指纹识别")
        }
           }
    
       }
    

    相关文章

      网友评论

          本文标题:方法

          本文链接:https://www.haomeiwen.com/subject/uuzlsttx.html