(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
extension CGImage { | |
var isDark: Bool { | |
get { | |
guard let imageData = self.dataProvider?.data else { return false } | |
guard let ptr = CFDataGetBytePtr(imageData) else { return false } | |
let length = CFDataGetLength(imageData) | |
let threshold = Int(Double(self.width * self.height) * 0.45) | |
var darkPixels = 0 | |
for i in stride(from: 0, to: length, by: 4) { | |
let r = ptr[i] |
import Foundation | |
import AVFoundation | |
extension AVPlayer { | |
var isPlaying: Bool { | |
if (self.rate != 0 && self.error == nil) { | |
return true | |
} else { | |
return false |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
* Downloaded or downloading | |
============================= | |
**http://kickass.to/infiniteskills-learning-jquery-mobile-working-files-t7967156.html | |
**http://kickass.to/lynda-bootstrap-3-advanced-web-development-2013-eng-t8167587.html | |
**http://kickass.to/lynda-css-advanced-typographic-techniques-t7928210.html | |
**http://kickass.to/lynda-html5-projects-interactive-charts-2013-eng-t8167670.html | |
**http://kickass.to/vtc-html5-css3-responsive-web-design-course-t7922533.html | |
*http://kickass.to/10gen-m101js-mongodb-for-node-js-developers-2013-eng-t8165205.html | |
*http://kickass.to/cbt-nuggets-amazon-web-services-aws-foundations-t7839734.html |