Swift: aplica css local a la vista web

Estoy cargando una página html en una vista web y quiero aplicar un file CSS local. Estoy recibiendo el html en una cadena de un server y el css estará en mi aplicación. Por ejemplo, aquí quiero mostrar "¡Hola!" en rojo.

self.articleView = UIWebView(frame : CGRect(x : self.articleButton.frame.minX, y : self.articleButton.frame.maxY + 1, width : self.frame.width - 20, height: self.frame.height - self.articleButton.frame.maxY - 10)); self.articleView.backgroundColor = UIColor.clearColor(); self.addSubview(self.articleView); self.articleView.loadHTMLString("<html><body><h1>Hello!</h1></body></html>", baseURL: nil) 

¿Sabes cómo aplicar el CSS? ¿Debo intentar con un WKWebView?

Gracias por adelantado.

Agregue el método delegado de UIWebView como este

 func webViewDidFinishLoad(webView: UIWebView) { let path = NSBundle.mainBundle().pathForResource("styles", ofType: "css") let javaScriptStr = "var link = document.createElement('link'); link.href = '%@'; link.rel = 'stylesheet'; document.head.appendChild(link)" let javaScripthPath = NSString(format: javaScriptStr, path!) webView.stringByEvaluatingJavaScriptFromString(javaScripthPath as String) //Second way do { let cssContent = try NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding as NSStringEncoding); let javaScrStr = "var style = document.createElement('style'); style.innerHTML = '%@'; document.head.appendChild(style)" let JavaScrWithCSS = NSString(format: javaScrStr, cssContent) self.articleView.stringByEvaluatingJavaScriptFromString(JavaScrWithCSS as String) } catch let error as NSError { print(error); } } 

Espero que esto te ayudará.