ไลบรารี Swift สำหรับส่วนประกอบ UI ของ what3words แพ็คเกจส่วนประกอบ Swift นี้มอบวิธีที่ตรงไปตรงมาในการเพิ่มฟังก์ชันอินเทอร์เฟซ what3word ให้กับแอปของคุณ เช่น ช่องข้อความแนะนำอัตโนมัติ มุมมองแผนที่ หรือเส้นตาราง what3words ลงในแอปของคุณ
ประกอบด้วย:
หากต้องการใช้ไลบรารีนี้ คุณจะต้องมีคีย์ API what3words ซึ่งสามารถสมัครได้ที่นี่ หากคุณต้องการใช้การเรียก Voice API คุณต้องเพิ่มแผน Voice API ให้กับบัญชีของคุณ
คุณสามารถติดตั้งด้วย Swift Package Manager ได้โดยเพิ่ม URL ด้านล่างลงใน Swift Package ภายใต้การตั้งค่าโปรเจ็กต์ของคุณ:
https://github.com/what3words/w3w-swift-components.git
นำเข้าไลบรารี:
import W3WSwiftApi
import W3WSwiftComponents
import CoreLocation
หากคุณใช้ Voice API บนอุปกรณ์ คุณควรรวมการอนุญาตไมโครโฟนไว้ใน Info.plist ของคุณ:
W3WAutoSuggestTextField
คือ UITextField
ที่จะแนะนำที่อยู่สามคำเมื่อผู้ใช้ป้อนข้อความ มีตัวเลือกการจดจำเสียง
สิ่งนี้สอดคล้องกับ W3WAutoSuggestTextFieldProtocol
ของเรา ด้วยเหตุนี้ อินเทอร์เฟซจึงได้รับการบันทึกไว้ที่ Documentation/Autosuggest/autosuggest.md
W3WAutoSuggestSearchController
คือ UISearchController
ที่จะแนะนำที่อยู่คำสามคำเมื่อผู้ใช้ป้อนข้อความ ซึ่งช่วยให้สามารถฝังฟังก์ชันนี้ในสิ่งต่างๆ เช่น UINavigationController
มีตัวเลือกการจดจำเสียง
สิ่งนี้สอดคล้องกับ W3WAutoSuggestTextFieldProtocol
ของเรา ด้วยเหตุนี้ อินเทอร์เฟซจึงได้รับการบันทึกไว้ที่ Documentation/Autosuggest/autosuggest.md
Map Helper ช่วยให้คุณสามารถรวมคุณลักษณะแผนที่ what3words เข้ากับแผนที่ที่มีอยู่ได้อย่างง่ายดาย
W3WMapHelper
สอดคล้องกับ W3WMapViewProtocol
สามารถดูการอ้างอิงฟังก์ชันได้ที่ Documentation/Map/map.md
let api = What3WordsV4(apiKey: "YourApiKey")
let mapHelper = W3WMapHelper(api, map: yourMKMapView)
หากแอปของคุณมี ViewController ที่มีแผนที่อยู่แล้ว W3WMapHelper
ก็มีฟังก์ชันอำนวยความสะดวกเพื่อเพิ่มลงในฟังก์ชัน MKMapViewDelegate
ของคุณสำหรับตาราง what3words และคำอธิบายประกอบแบบพินที่จะปรากฏบนแผนที่ของคุณ ตัวอย่างที่เชื่อมโยงกับด้านบนแสดงตำแหน่งที่คุณจะโทรออก และวิธีการสร้างอินสแตนซ์ W3WMapHelper
W3WMapView
สอดคล้องกับ W3WMapViewProtocol
สามารถดูการอ้างอิงฟังก์ชันได้ที่ Documentation/Map/map.md
let api = What3WordsV4(apiKey: "YourApiKey")
let mapview = W3WMapView(api)
เราสร้าง W3WMapView
เพื่อให้เป็นวิธีที่รวดเร็วและสกปรกในการนำฟังก์ชัน what3words มาสู่แอปของคุณอย่างรวดเร็ว
เพียงแทนที่ MKMapView ของคุณด้วย W3WMapView แล้วแอปของคุณควรจะทำงานเหมือนเดิม ยกเว้นว่ามันจะวาดเส้นกริด what3words และมีฟังก์ชันใหม่บางอย่างให้ใช้งาน เช่น addMarker(at: "filled.count.soap")
มันได้มาจาก MKMapView
แต่ Apple ไม่แนะนำให้รับออบเจ็กต์ใหม่จาก MKMapView เนื่องจากสันนิษฐานว่าอินเทอร์เฟซอาจเปลี่ยนแปลงได้ในอนาคต ดังนั้นให้มองว่านี่เป็นวิธีที่รวดเร็วและสกปรกในการนำฟังก์ชันการทำงานมาสู่แอปของคุณ
แนวทางที่ดีกว่าคือการใช้ W3WMapHelper
ซึ่งได้รับการออกแบบให้เข้ากันได้ดีกับคลาสที่สอดคล้องกับ MKMapViewDelegate
ของคุณ ซึ่งน่าจะเป็น UIViewController
W3WMapViewController
สอดคล้องกับ W3WMapViewProtocol
สามารถดูการอ้างอิงฟังก์ชันได้ที่ Documentation/Map/map.md
let api = What3WordsV4(apiKey: "YourApiKey")
let vc = W3WMapViewController(api)
สิ่งนี้สาธิต W3WMapViewController
ซึ่งเป็นส่วนประกอบระดับสูงที่มีฟังก์ชัน what3words ที่ใช้งานง่าย
หากคุณไม่มีแผนที่ในแอปของคุณและต้องการรวมแผนที่ที่มีพฤติกรรมเริ่มต้นบางอย่างไว้อย่างรวดเร็ว แผนที่นี้อาจเหมาะกับคุณ
ระบบการวัดในส่วนประกอบเหล่านี้ได้รับการตั้งค่าตามความชอบของผู้ใช้หรือสถานที่โดยอัตโนมัติ แต่คุณสามารถแทนที่สิ่งนี้เป็น .metric
หรือ .imperial
:
W3WSettings . measurement = . metric
ส่วนประกอบ W3WAutosuggest ได้รับการแปลเป็นภาษาต่างๆ ประมาณ 50 ภาษา และไฟล์ Localizable.strings
สำหรับสิ่งเหล่านี้อยู่ในแหล่งข้อมูลของแพ็คเกจนี้ เพื่อให้ทำงานได้ เช่นเดียวกับการตั้งค่าการแปล iOS อย่าลืมเพิ่มภาษาที่คุณต้องการใช้ในการตั้งค่าโปรเจ็กต์ของคุณภายใต้ ข้อมูล -> การแปลเป็นภาษาท้องถิ่น