A: 

Is [webView loadHTMLString:htmlData baseURL:baseURL]; called from viewDidAppear? If so, that would explain the flicker: it's loading the HTML while the user watches. Move that call to viewDidLoad and see if that solves it.

dbarker