ด้วยการประกาศของ iOS 12 ตอนนี้ UIWebView ได้เลิกใช้อย่างเป็นทางการแล้ว ในฐานะ iOS 13 แอปเปิ้ลเริ่มปฏิเสธแอพที่ใช้ UIWebView ทำให้ไลบรารีนี้หมดอายุอย่างสมบูรณ์
ห้องสมุดนี้จะถูกทิ้งไว้สำหรับนักพัฒนาที่อาจต้องสนับสนุน iOS 7 แต่จะไม่มีการเพิ่มคุณสมบัติใหม่และจะไม่สนับสนุน คอยติดตาม แผนสำหรับเวอร์ชัน WKWebView อยู่ในการสร้าง : D

TOWebViewController เป็นคลาสย่อย UIViewController แบบโอเพ่นซอร์สที่ออกแบบมาเพื่อให้แอพนำเสนอเนื้อหาหน้าเว็บให้กับผู้ใช้อย่างรวดเร็วโดยไม่จำเป็นต้องเตะพวกเขาไปที่ Safari TOWebViewController ได้รับการออกแบบมาจากพื้นดินเพื่อรวมเข้ากับโครงการที่มีอยู่ได้อย่างง่ายดายเพื่อใช้ประโยชน์จากคุณสมบัติล่าสุดของ iOS และทางเลือกจะกลับมาทำงานร่วมกับ iOS รุ่นก่อนหน้า (อย่างมีนัยสำคัญ)
UIWebView ซึ่งเข้ากันได้กับ iOS 5 TOWebViewController ฉลาดพอที่จะบอกได้ว่าเมื่อนำเสนอเป็นป๊อปอัพแบบโมดอลและเมื่อมันถูกผลักไปยัง UINavigationController และเปลี่ยนเค้าโครงปุ่มตามลำดับ
เมื่อนำเสนอเป็นป๊อปอัพแบบโมดอลก็ยังจำเป็นต้องสร้าง UINavigationController พาเรนต์เพื่อให้ปุ่มแสดงได้อย่างถูกต้อง:
TOWebViewController *webViewController = [[TOWebViewController alloc ] initWithURL: [ NSURL URLWithString: @" http://www.apple.com/ " ]];
UINavigationController *navigationController = [[UINavigationController alloc ] initWithRootViewController: webViewController];
[ self presentViewController: navigationController animated: YES completion: nil ];UINavigationController TOWebViewController *webViewController = [[TOWebViewController alloc ] initWithURL: [ NSURL URLWithString: @" http://www.apple.com/ " ]];
[ self .navigationController pushViewController: webViewController animated: YES ];iOS 5.0 ขึ้นไป
เพิ่มสิ่งต่อไปนี้ใน PodFile ของคุณ:
pod 'TOWebViewController' เพิ่มสิ่งต่อไปนี้ใน CartFile ของคุณ:
github "https://github.com/TimOliver/TOWebViewController"
ดาวน์โหลดโครงการนี้จาก GitHub ย้ายโฟลเดอร์ย่อยชื่อ 'TowebViewController' ไปยังโฟลเดอร์โครงการของคุณแล้วลากลงในโครงการ XCode ของคุณ
หลังจากนั้นคุณจะต้องเชื่อมโยงกรอบระบบต่อไปนี้กับโครงการของคุณ:
WKWebView ? ห้องสมุดนี้ถูกสร้างขึ้นรอบ ๆ iOS 5 โดยมีเป้าหมายที่ชัดเจนในการสนับสนุน iOS ให้มากที่สุดเท่าที่จะทำได้ ในขณะที่มีการทดลองบางอย่างในการพยายามวาง WKWebView ลงในคอนโทรลเลอร์นี้เป็นตัวเลือกสำหรับอุปกรณ์ที่ใช้ iOS 8 ขึ้นไป แต่ API ของมันแตกต่างจาก UIWebView โดยธรรมชาติว่ามันจะท้าทายมากที่จะสนับสนุนการสลับระหว่างทั้งสองอย่างเหมาะสม เป็นผลให้ตัวเลือกที่ดีที่สุดคือการเขียนคอนโทรลเลอร์เว็บมุมมองใหม่ตั้งแต่เริ่มต้นออกแบบรอบ ๆ WKWebView
TOWebViewController จะไม่ใช้ WKWebView ณ จุดใด ๆ ในอนาคต หากคุณต้องการคอนโทรลเลอร์มุมมองทางเลือกที่ทำโปรดให้ DZNWebViewController ลอง!
SFSafariViewController ล่ะ? เริ่มต้นจาก iOS 9 ตอนนี้ Apple ให้บริการคอนโทรลเลอร์บนเว็บในตัวของฟังก์ชั่นที่คล้ายกันชื่อ SFSafariViewController หากแอพของคุณกำหนดเป้าหมายเฉพาะ iOS 9 และเติมเต็มความต้องการของคุณอย่างสมบูรณ์ขอแนะนำให้คุณใช้ SFSafariViewController แทน TOWebViewController
ดังที่ได้กล่าวไว้หากคุณยังคงกำหนดเป้าหมายเวอร์ชัน iOS ที่ต่ำกว่าหรือต้องการความสามารถในการปรับแต่งได้มากกว่า SFSafariViewController ให้ TOWebViewController ยังคงสามารถใช้เป็นทางเลือกที่ทำงานได้
TOWebViewController ถูกสร้างขึ้นโดย Tim Oliver เป็นส่วนประกอบสำหรับ ICOMICS ซึ่งเป็นแอพการ์ตูนเครื่องอ่านสำหรับ iOS
ขอขอบคุณยังไปที่รายการผู้มีส่วนร่วมของ TOWebViewController !
iPad Pro และ iPhone X อุปกรณ์จำลองโดย Pixeden iPod Touch Mockup โดย Tim Oliver
TowebViewController ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT สำหรับข้อมูลเพิ่มเติมโปรดดูไฟล์ใบอนุญาต