還記得2020年底前,必須把UIWebView全面改成WKWebView,這些也在這篇文章提及:棄用API的使用情況 (Deprecated API Usage)。並且我在最近把第三方套件中的UIWebView移除。
由於開發能量有限,想要直接把Web的內容鑲嵌在App之中,可以怎麼做比較好呢?其中之一的方式就是使用SafariViewController,幾乎等同於Safari App的效果。
原本還想說Web的內容在手機上呈現效果奇差無比,假如Web沒有把響應式網頁設計(Responsive Web Design)寫好,確實在手機小畫面中呈現不佳。但我畢竟不是Web工程師,難播出時間去調整Web內容。
幸運的是,SafariViewController Reader Mode很好用,若某頁面符合Reader Mode條件,即可呈現良好閱讀的視覺介面,如字體變大,隱藏多餘功能等。
程式碼也相當容易設定:
SFSafariViewController *safariVC = [[SFSafariViewController alloc] initWithURL:[NSURL URLWithString:urlStr] entersReaderIfAvailable:YES];
[self presentViewController:safariVC animated:YES completion:nil];
SafariViewController也讓我不必自己刻控制元件如:
- 往回
- 往前
- 分享
- 轉往瀏覽器
等功能。未來可多熟悉SafariViewController和WKWebView,也許能做到讓用戶難以發現,其實是Web做出來的畫面!
至於如何做才能符合Reader Mode的條件?那就自行研究囉:P~
隨意留個言吧:)~