From 925f3b897c7895f444aa2e2a5c87dffb22086226 Mon Sep 17 00:00:00 2001 From: ahinchman1 Date: Sun, 12 Mar 2017 12:04:25 -0500 Subject: [PATCH 1/9] added KDIC image --- KDIC/Base.lproj/Main_iPhone.storyboard | 1 + .../Screen Shot 2017-03-08 at 5.54.02 PM.png | Bin 0 -> 23855 bytes .../KDIC.imageset/Contents.json | 21 ++++++++++++++++++ KDIC/Images.xcassets/KDIC.imageset/KDIC.png | Bin 0 -> 48577 bytes KDIC/PlayerViewController.swift | 6 +++++ KDICCore/KDICPlayer.swift | 1 + 6 files changed, 29 insertions(+) create mode 100644 KDIC/Base.lproj/Screen Shot 2017-03-08 at 5.54.02 PM.png create mode 100644 KDIC/Images.xcassets/KDIC.imageset/Contents.json create mode 100644 KDIC/Images.xcassets/KDIC.imageset/KDIC.png diff --git a/KDIC/Base.lproj/Main_iPhone.storyboard b/KDIC/Base.lproj/Main_iPhone.storyboard index 1d283fe..a7e0e16 100644 --- a/KDIC/Base.lproj/Main_iPhone.storyboard +++ b/KDIC/Base.lproj/Main_iPhone.storyboard @@ -109,6 +109,7 @@ + diff --git a/KDIC/Base.lproj/Screen Shot 2017-03-08 at 5.54.02 PM.png b/KDIC/Base.lproj/Screen Shot 2017-03-08 at 5.54.02 PM.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d78e979933928d55c08d0c7083e06ae8a808ff GIT binary patch literal 23855 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 literal 0 HcmV?d00001 diff --git a/KDIC/PlayerViewController.swift b/KDIC/PlayerViewController.swift index cafeddc..4410d03 100644 --- a/KDIC/PlayerViewController.swift +++ b/KDIC/PlayerViewController.swift @@ -7,16 +7,22 @@ class PlayerViewController: UIViewController { @IBOutlet weak var subtitleLabel: UILabel! @IBOutlet weak var imageView: UIImageView! + @IBOutlet weak var KDICPhoto: UIImageView! @IBAction func togglePlayerButtonWasTapped(_ sender: Any) { KDICPlayer.toggle() } + override func viewDidLoad() { super.viewDidLoad() + self.KDICPhoto.image = UIImage(named: "KDIC") } + override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) print("About to play") KDICPlayer.play() print("Playing!") } + + } diff --git a/KDICCore/KDICPlayer.swift b/KDICCore/KDICPlayer.swift index 60adbe3..266469f 100644 --- a/KDICCore/KDICPlayer.swift +++ b/KDICCore/KDICPlayer.swift @@ -20,6 +20,7 @@ open class KDICPlayer { player.pause() } + /** to fix **/ open class func toggle() { if isPlaying { pause() From 95580564645479d62c54d941ffbb2588234abc3e Mon Sep 17 00:00:00 2001 From: ahinchman1 Date: Sun, 12 Mar 2017 13:45:42 -0500 Subject: [PATCH 2/9] replaced KDIC with ImageView --- KDIC/Base.lproj/Main_iPhone.storyboard | 3 +-- KDIC/PlayerViewController.swift | 5 ++--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/KDIC/Base.lproj/Main_iPhone.storyboard b/KDIC/Base.lproj/Main_iPhone.storyboard index a7e0e16..9b324ce 100644 --- a/KDIC/Base.lproj/Main_iPhone.storyboard +++ b/KDIC/Base.lproj/Main_iPhone.storyboard @@ -109,8 +109,7 @@ - - + diff --git a/KDIC/PlayerViewController.swift b/KDIC/PlayerViewController.swift index 4410d03..ca25abe 100644 --- a/KDIC/PlayerViewController.swift +++ b/KDIC/PlayerViewController.swift @@ -6,15 +6,14 @@ class PlayerViewController: UIViewController { @IBOutlet weak var titleLabel: UILabel! @IBOutlet weak var subtitleLabel: UILabel! @IBOutlet weak var imageView: UIImageView! - - @IBOutlet weak var KDICPhoto: UIImageView! + @IBAction func togglePlayerButtonWasTapped(_ sender: Any) { KDICPlayer.toggle() } override func viewDidLoad() { super.viewDidLoad() - self.KDICPhoto.image = UIImage(named: "KDIC") + self.imageView.image = UIImage(named: "KDIC") } override func viewDidAppear(_ animated: Bool) { From 07287bd300355948a8d408eda85baa19d3dbfe62 Mon Sep 17 00:00:00 2001 From: ahinchman1 Date: Sun, 12 Mar 2017 14:10:22 -0500 Subject: [PATCH 3/9] Fixed toggle issue --- KDICCore/KDICPlayer.swift | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/KDICCore/KDICPlayer.swift b/KDICCore/KDICPlayer.swift index 266469f..a4fde39 100644 --- a/KDICCore/KDICPlayer.swift +++ b/KDICCore/KDICPlayer.swift @@ -3,30 +3,40 @@ import AVFoundation private let streamURL = URL(string: "http://kdic.grinnell.edu/stream")! +let kdicInstance = KDICPlayer(); + +private var isPlaying = false; + open class KDICPlayer { private static var player: AVPlayer = { let asset = AVURLAsset(url: streamURL) let playerItem = AVPlayerItem(asset: asset) + // return AVPlayer(playerItem: playerItem) }() - open static var isPlaying = player.rate != 0 open class func play() { player.play() + isPlaying = true } open class func pause() { player.pause() + isPlaying = false } /** to fix **/ open class func toggle() { - if isPlaying { + if isPlaying == true { pause() } else { play() } } + + open func currentlyPlaying() -> Bool { + return isPlaying + } } From 211aa4443d49c9828f6d6b2e1f2a43d894335709 Mon Sep 17 00:00:00 2001 From: ahinchman1 Date: Sun, 12 Mar 2017 20:41:12 -0500 Subject: [PATCH 4/9] fixed constraints, refactored out StackView --- KDIC/Base.lproj/Main_iPhone.storyboard | 99 +++++++++++++------------- 1 file changed, 49 insertions(+), 50 deletions(-) diff --git a/KDIC/Base.lproj/Main_iPhone.storyboard b/KDIC/Base.lproj/Main_iPhone.storyboard index 9b324ce..a490e26 100644 --- a/KDIC/Base.lproj/Main_iPhone.storyboard +++ b/KDIC/Base.lproj/Main_iPhone.storyboard @@ -1,6 +1,6 @@ - + @@ -19,30 +19,16 @@ - + - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -115,11 +129,13 @@ - + + + diff --git a/KDIC/PlayerViewController.swift b/KDIC/PlayerViewController.swift index 8eff436..ae2426e 100644 --- a/KDIC/PlayerViewController.swift +++ b/KDIC/PlayerViewController.swift @@ -7,6 +7,7 @@ class PlayerViewController: UIViewController { @IBOutlet weak var subtitleLabel: UILabel! @IBOutlet weak var imageView: UIImageView! + @IBOutlet weak var button: UIButton! @IBAction func togglePlayerButtonWasTapped(_ sender: Any) { KDICPlayer.toggle() } @@ -14,50 +15,14 @@ class PlayerViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() - self.imageView.image = UIImage(named: "Equalizer") - - button.setImage(imgShell1, forState:.Normal); - button.setImage(coin, forState:.Highlighted); - - button.setBackgroundImage(resizeImageWithAspect(UIImage(data: data!)!,size:button.bounds.size), forState: .Normal); - button.contentMode = UIViewContentMode.ScaleAspectFit; - button.clipsToBounds = true; - } override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) print("About to play") - KDICPlayer.play() + KDICPlayer.live() print("Playing!") } - func resizeImageWithAspect(image: UIImage,size: CGSize)->UIImage - { - let oldWidth = image.size.width; - let oldHeight = image.size.height; - - let scaleFactor = (oldWidth > oldHeight) ? size.width / oldWidth : size.height / oldHeight; - - let newHeight = oldHeight * scaleFactor; - let newWidth = oldWidth * scaleFactor; - let newSize = CGSizeMake(newWidth, newHeight); - - if UIScreen.mainScreen().respondsToSelector(#selector(NSDecimalNumberBehaviors.scale)){ - UIGraphicsBeginImageContextWithOptions(newSize,false,UIScreen.mainScreen().scale); - } - else - { - UIGraphicsBeginImageContext(newSize); - } - - image.drawInRect(CGRectMake(0, 0, newSize.width, size.height)); - let newImage = UIGraphicsGetImageFromCurrentImageContext(); - UIGraphicsEndImageContext(); - - return newImage; - } - - }