2016-02-18 58 views
1

我被賦予了一個大的HTML內容(比如說一個巨大的博客文章)。目標是將此HTML內容呈現爲多個頁面(分頁應用程序)。爲了清晰起見,不是在UIWebView中進行垂直滾動,而是將內容分成書本(即將頁面移動到其餘內容,而不是在典型的UIWebView中滾動)。iOS:將大型HTML內容分割爲多個水平分頁視圖

我擡起頭,SO上類似的帖子。不幸的是,這些帖子在我的情況下並沒有那麼有用。作爲參考,這裏是相似的,所以帖子:

  1. Split html string into multiple pages
  2. ​​
  3. Present html content as dynamic "pages"
  4. 外部參考:https://recalll.co/app/?q=android%20webview%20-%20Split%20html%20string%20into%20multiple%20pages

我如何能實現基於頁面的(非垂直滾動)給定HTML內容的應用程序?

回答

0

我知道這是一個老問題,但以防萬一:)

你的問題有一個非常簡單的解決方案。 UIWebView的每個對象都有一個名爲scrollView的字段,它是UIScrollView類的對象。通過設置這些值的UIScrollView支持分頁:

webView.scrollView.isPagingEnabled = true // enable pagination 
webView.paginationMode = .leftToRight // set horizontal mode 
webView.paginationBreakingMode = .page // pages or collumns (latter need css support though 

然後,您可以填寫您webView數據調用loadHTMLString

guard let path = Bundle.main.path(forResource: "NameOfYourFile", ofType: "html") else { 
    return 
} 
guard let data = FileManager.default.contents (atPath: path) else { 
    return 
} 
guard let contentString = String(data: data, encoding: .utf8) else { 
    return 
} 
let webView = UIWebView(frame: view.frame) 
webView.loadHTMLString(contentString, baseURL: nil)  
view.addSubview(webView) 

這就是你需要做。爲了記錄,我將上面的代碼行放在我的測試項目中的viewDidLoad方法內。

相關問題