编辑代码

//
// ViewController.swift
// AnimalUnderstanding
//
// Created by Zhifeng Chen on 2020/8/3.
// copyright @ 2020 Zhifeng Chen. All right reserved.
//

import UIKit
//导入视频支持库
import AVKit
//导入音频支持库
import AVFoundation

class ViewController: UIViewController {
    //是否播放视频标记
    var playFlag = false
    //视频播放控制器
    var playerViewController = AVPlayerViewController()
    //音频播放器变量
    var soundPlayer ; AVAudioPlayer!

    override func viewDidLoad() {
        super.viewDidLoad()
        //Do any additional setup after loading the view.
        let iv = self.view.viewWithTag(4)! as! UTTmageView
        //UIImage的一个方法 animatedImageNamed("frame",duration: 0.5)
        //设置动画
        iv.image = img

        //开启定时器,自动调用相关函数
        Timer.scheduledTimer(timeInterval:2.0, target: self, selector: #selector(doTimer), userInfo: nil,repeats: true)
    }

    @objc func doTimer(){
        let iv = self.view.viewWithTag(4)!
        UIView.animate(withDuration: 2, animations: {
            iv.transform = iv.transform.rotated(by:CGFloat(360))
        })
    }
}

@IBAction func onPlayAudio(_sender : UIButton) {
    //获取当前按钮的title
    let title = sender.currentTitle
    //从沙盒中读取文件所在路径,文件名为bird.mp3
    let path = Bundle.main.path(forResource: title,ofType:"mp3")
    //将路径转换为URL
    let url = URL(fileURLWithPath:Path!)
    //调用AVAudioplayer函数,生成播放器
    soundPlayer = try?AVAudioplayer(contentsOf: ur1)
    //播放器播放声音,默认是循环播放方式
    soundplayer.play()
}
@IBAction func onplayVideo(_sender: UIButton) {
    if !playFlag {
        //打开在沙盒中的视频文件test.mov
        let path = Bundle.main.path(forResource:"rollinwild",ofType:"mp4")
        //转化为URL
        let url = URL(fileURLWithPath: path!)
        //打开AVplayer
        let player = AVPlayer(url:url)
        //AVplayerViewController实例化
        player.play()
        //设置播放器
        playerViewController.player = player
        //获得当前按钮的位置和尺寸
        let buttonposition = sender.frame
        //视频播放的位置x
        let x = buttonposition.origin.x-200
        //视频播放的位置y
        let y = buttonposition.origin.y-120
        //添加播放器的View大小和范围
        playerViewController.view.frame = CGRect(x:x, y:y, width:200,height: 112)
        self.addChild(playerViewController)
        self.view.addSubview(playerViewController.view)
        playFlag = true
    }
    else {
        playerViewController.view.removeFromSuperview()
        playFlag = false
    }
} 




//
// ViewController.swift
// VideoPlay-Sandbox
//
// Created by Zhifeng Chen on 2020/8/3.
// Copyright @ 2020Zhifeng Chen. All right reserved.
//

import UIKit
import AVKit


class ViewController: UIViewController {

    @IBAction func play(_sender:Any)
    {
        //打开在沙盒中的视频文件test.mov
        let path = Vundle.main.path(forResource:"test",ofType:"mov")
        //转化为URL
        let url = URL(fileURLWithpath: path!)
        //打开AVPlayer
        let palyer = AVPlayer(url: url)
        //AVPlayerViewController实例化
        let playerViewController = AVPlayerViewController()
        //设置播放器
        playerViewController.player = player
        //添加播放器的View大小和范围
        playerViewController.view.frame = CGRect(x: 20,y: 100,width:self.view.bounds.width - 40, height:200)
        self.addChild(playerViewController)
        self.view.addSubview(playerViewController.view)
    }
}    





var imgs : Array<UIImage> = []
for i in 1...19 {
    let img = UIImage(named: "frame-\(i".png)!
    imgs.append(img)
}
let imgView = self.view.viewWithTag(4) asUTTmageView
imgView.animationImages = imgs
imgView.animationDuration = 0.8
imgView.startAnimating()



letlet iv = self.view.viewWithTag(4)!
UIView.animate(withDuration: 2, animations: {
    iv,transform = iv.transform.rotated(by:CGFloat(360))
})



let iv = self.view,viewWithtag(4)!
UIView.animate(withDuration: 2, animations {
    iv.frame.origin.x +=100
    if iv.frame.origin.x > self.view.frame.size.width {
        iv.frame.origin.x = 0
    }
})



let iv = self.view.viewWithTag(4)!
UIView.animate(withDuration: 2, animations: {
    iv.transform = CGAffineTransform(scaleX: 0.8, y: 0.8)
})



let iv = self.view.viewWithTag(4)!
UIView.animate(withDuration: 2, animations: {
    iv.alpha = 0.1
})






//
//  ViewController.swift
//  BirdSound
//  
//  Created by Zhifeng Chen on 2020/8/3.
//  Copyright @ 2020 Zhifeng Chen. All rights reserved.
//

import UIKit
//导入音频支持库
import AVFoundation

calss ViewController: UIViewController {
    //播放器变量
    var soundPlayer : AVAudioPlayer!

    @IBAction func onClicked(_sender : UIButton) {
        //从沙盒中读取文件所在路径,文件名为bird.mp3
        let path = Bundle.main.path(forResource: "bird",ofType:"mp3")
        //将路径转换为URL
        let url = URL(fileURLWithPath:path!)
        //调用AVAudioPlayer函数,生成播放器
        soundplayer = try? AVAudioPlayer(contentsOf: url)
        //播放器播放声音,默认是循环播放方式
        soundplayer.play()
    }
}